본문 바로가기

장고16

[Django] 16. API TESTING Testpython manage.py test퍼블리쉬하기 전에 모든 경우를 테스트해준다  1) rooms > tests.py 에서 TestAmenities(APITestCase) 클래스 생성    이때, 메서드 이름을 'test_'로 시작해야 test 코드가 실행된다2) 위 명령어 'python manage.py test'를 실행할때마다 empty database를 생성하고, 테스트가 끝나면 그 database는 없어짐3) 모든 test 메서드 이전에 setUp메서드가 실행되어야: 데이터베이스를 set up(설정)  - test 코드는 다 비슷비슷하다(self.client, self.assert )   (status_code 확인, 예상과 같은 name이 나오는지 확인) Authentication:API.. 2024. 9. 1.
[Django] 15. AUTHENTICATION - 토큰 베이스의 인증 생성 - JWT(Jason Web Token) 인증 생성- 로그인하면 django가 자동으로 쿠키, 세션을 생성- /api/v1/users/me 로 갔을때, 내 프로필이 보여야 Custom Authentication(실제로는 사용하지 X. 커스텀 인증 만드는 것이 쉽다는 것을 보여주기 위해 그냥 한 번 해보는 것) user가 제공하는 정보를 그대로 믿고 인증을 해주는 것  1) config > settings.py 에서 Django RestFramework 인증의 default 방식을 명시 2) config > authentication.py 파일 만들어 TrustMeBroAuthentication 클래스 생성Token Authentication- 랜덤 토큰을 생성해서 user에게.. 2024. 8. 30.
[Django] 12. USERS API ProfileGET /mePUT /me 1) config > urls.py 의 urlpatterns에서 path 추가2) users > urls.py 파일 만들어서 urlpatterns 생성3) users > views.py 에서 Me(APIView) 클래스 생성 4) users > serializers.py 에서 PrivateUserSerializer 클래스 생성 5) users > models.py 에서 avatar를 ImageField에서 URLField로 변경Create UserPOST /users 1) users > views.py 에서 Users(APIview) 클래스 만들기 2) users > urls.py 의 urlpatterns에서 path 추가 Change PasswordGET /use.. 2024. 8. 28.
[Django] 11_3. REST API: Customizing Serializers Room에 대한 리뷰 만들기rooms > models.py 의 Room 클래스의 rating 메서드를rooms > serializers.py 에서 불러와서 사용하기(serializer field에서) rooms > serializers.py 의 RoomDetailSerializer 클래스에서 rating을 만들고 + get_rating 메서드(이름 지키기!) 생성 RoomListSerializer 클래스에도 rating + get_rating 메서드 추가 Context특정 상황에서 필요한 데이터를 포함하고 있는 사전(dictionary) 형태의 객체주로 템플릿 엔진, 시리얼라이저, 또는 뷰에서 사용되며, 이 Context 객체를 통해 템플릿이나 시리얼라이저에서 필요한 추가적인 데이터나 변수를 전달할 수 .. 2024. 8. 26.
[Django] 11_1. REST API: amenities / perks 1. amenities  아래 두 가지 API를 만들어본다 1-1. /amenities: GET, POST1-2. /amenities/1: GET, PUT, DELETE  2-1. /perks: GET, POST 2-2. /perks/1: GET, PUT, DELETE  POST: 새로운 리소스를 생성 PUT: 기존 리소스를 업데이트(수정)  모든 view function은 request를 받는다(django default)  1-1. /amenities: GET, POST 1) rooms > views.py 에서 클래스 만들기2) rooms > urls.py 의 urlpatterns에서 경로 추가 3) rooms > serializers.py 파일 생성하여 serializer 만들기 ModelSeria.. 2024. 8. 6.
[Django] 10. Django REST Framework: JsonResponse / api_view / Serializer / ViewSet /rooms -> JSON -> UI유저가 /rooms 페이지로 이동하면 -> ReactJS가 해당 JSON을 예쁘게 만들어 UI를 만들어준다 유저는 Django 서버에서 실제로 /rooms url로 직접 이동하지 X프론트엔드의 React UI 애플리케이션이 서버에게 데이터를 요청하는 것  GET: 데이터를 가져옴POST: 서버에 데이터를 보냄  주요과정1. decorator로 decorated된 API view 함수: 데이터베이스에 있는 모든 카테고리를 가져와서 serializer에게 전달2. serializers.py에서 무엇을 어떻게 번역할지를 지정  categories > urls.py 파일 만들어서 urlpatterns 리스트 만들기 categories > views.py 파일에서 view 함수.. 2024. 7. 23.
반응형