ex: url : "post/<int: post_id>"
class PostDetail(APIView):
def get(self, request, format=None, **kwargs):
posts = Post.objects.get(pk=self.kwargs['post_id'])
serializer = PostSerializer(posts)
return Response(serializer.data)
Django-Rest-Framework(DRF)로 소셜 로그인 API 구현해보기 (Google, Kakao, Github) (2)
Multiple Models in Django Rest Framework?
예시
class Main(APIView):
def get(self, request, format=None, **kwargs):
me = request.user
posts = Post.objects.all()
me_serializer = UserSerializer(me)
posts_serializer = PostSerializer(posts, many=True)
return Response({"me": me_serializer.data, "all_posts":posts_serializer.data})
이거 그냥 model serialize하면 user가져올때 id로 가져와서 serialize함.
근데 나는 user 내용또한 serialize하고싶음
→ serialize 중첩 = Nested Serialize
class PostDetailSerializer(serializers.ModelSerializer):
class Meta:
model = Post
fields = "__all__"
def to_representation(self, instance):
response = super().to_representation(instance)
response['child'] = UserSerializer(instance.user).data
return response