Python-Framework/Python-Framework__Django

django rest api 2) 프로젝트 실행하기

말하는감자 2019. 9. 6. 19:27

1. 이전에 생성한 프로젝트 이름은 server입니다.

프로젝트 내부의 settings.py 를 열어준다
INSTALLED_APPS에 내용을 입력해준다.
'rest_framework'
'search'(앱이름) 만 추가해준다

프로젝트/setting.py
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'search'
]

 

 

2. 프로젝트 내부의 urls.py를 오픈해준다.

기본적으로 뭔가 적혀있다.
django.urls 에 기본적으로 path만 임포트 되어있는데 include를 추가해준다.
그리고 urlpatterns에 앱 내부의 urls를 사용하기 위해서 path를 추가해준다.

프로젝트/urls.py
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/', include('search.urls')),
]

 

 

3. 앱 내부에 urls.py 파일을 생성해준다

앱/urls.py
from django.urls import path
from . import views
urlpatterns = [
    path('search/', views.search_list, name='search_list'),
]

지금의 path 대로 따라가면 http://localhost:8000/api/search/ 로 접속하면 views의 search_list 메서드로 연결된다.
즉... views의 search_list가 아닌 다른 메서드를 생성하고 싶다면 다른 이름으로 설정해주어야 합니다.

 

 

4. 앱 내부의 views.py를 열어준다.

앱/views.py
from rest_framework.decorators import api_view
from rest_framework.response import Response
from rest_framework import status
@api_view(['GET', 'POST'])
def search_list(request):
    print("test")
    return Response({'key': 'value'}, status=status.HTTP_200_OK)

메서드로 전달이 잘 되는지만 확인하려고 간단하게 print만 추가해주었다.
만약 POST 테스트를 하고싶다면
print(request.data['제이슨칼럼이름']) 으로 간단하게 테스트가 가능하다.

 

 

5. 테스트

프로젝트 RUN 후에 http://localhost:8000/api/search 로 접속해준다

아래의 콘솔창에 test가 잘 출력되었습니다.
테스트는 성공인 것으로 >_<

'Python-Framework > Python-Framework__Django' 카테고리의 다른 글

django rest api  (0) 2021.01.20
django table drop  (0) 2021.01.13
django rest api 2) 프로젝트 실행하기  (0) 2019.09.06
django rest api 1) 초기 셋팅  (0) 2019.09.06
2) Detail 구현  (0) 2019.01.10
1) 프로젝트 생성 및 연결  (0) 2019.01.08
1 2 3 4 5 6