GitHub

https://github.com/Choidongjun0830

AirBnB 3

노마드 코더 에어비앤비 클론 코딩 #11 Rest API - 1

All Amenities, Perks Amenity와 Perk도 Category API를 만들 듯이 만들었다. APIView를 쓰면, request.method가 GET인지 POST인지 확인하는 조건문이 필요없다. serializers.py에서 ModelSerializer를 상속받아서 사용하면, 'id', 'created_at', 'updated_at'은 자동으로 read_only로 되어있다. def ... ... if serializer.is_valid(): amenity = serializer.save() #유효하다면 amenity에 저장 return Response(AmenitySerializer(amenity).data) #amenity를 번역하고 데이터 뽑아서 리턴 ... Rooms Rooms는..

노마드 코더 에어비앤비 클론 코딩 #10 Django Rest Framework

@api_view() 유저에게 HttpResponse를 전달하면 안되고, JSON을 전달해야한다. Json에서는 'return JSONResponse({"categories":all_categories})'처럼 변수를 보내면 오류가 난다. 그래서 QuerySet을 JSON포맷으로 변환해야한다. Django Rest Framework를 사용하여 변환할 수 있다. #예 from rest_framework.response import Response from .models import Category @api_view() def categories(request): return Response(...) Serializer: python말로 Django말을 JSON으로 바꿔주고, 반대로 JSON을 Django말..

노마드 코더 에어비앤비 클론 코딩 #8 Power Admin

Methods admins.py와 models.py 모두에 function을 정의할 수 있다. 만약 오직 관리자 페이지에서만 function을 사용할 것이라면, admins.py에 정의한다. 만약 관리자 페이지 뿐만 아니라 다른 곳에서도 사용할 것이라면, models.py에 정의한다. Method 만들기 클래스 안에 있는 메서드는 항상 self를 첫번째 매개 변수로 받아야한다. 꼭 self라 할 필요는 없고, 단지 꼭 하나의 초기 매개 변수가 있으면 된다. ⭐'방 리뷰의 평균 보여주기' 메서드 우리의 Room 모델의 review 속성을 가지고 있지 않다. 하지만, review 모델이 room을 가리키므로 Room에서 그 방을 가리키는 모든 review들에 접근할 수 있다. def rating(room):..

728x90