TIL Day 60.

Jen Devver·2024년 5월 9일

내배캠 TIL

목록 보기
67/91

Django 심화 팀 프로젝트

오늘의 문제해결

  • 시리얼라이저로 ManyToManyField 불러오기
    : 모든 데이터를 시리얼라이저로 보내기
  • 해결: 모두 시리얼라이저로 만들어서 넣기

serializers.py

from rest_framework import serializers
from django.contrib.auth import get_user_model
from .models import UserInfo
from articles.models import ContentInfo, CommentInfo


class FavoriteContentSerializer(serializers.ModelSerializer):
    class Meta:
        model = UserInfo
        fields = ["favorite_contents"]


class LikedContentSerializer(serializers.ModelSerializer):
    class Meta:
        model = UserInfo
        fields = ["liked_contents"]


class LikedCommentSerializer(serializers.ModelSerializer):
    class Meta:
        model = UserInfo
        fields = ["liked_commments"]


class UserSerializer(serializers.ModelSerializer):
    favorite_contents = FavoriteContentSerializer(many=True)
    liked_contents = LikedContentSerializer(many=True)
    liked_comments = LikedCommentSerializer(many=True)

    class Meta:
        model = get_user_model()
        fields = [
            "id",
            "username",
            "date_joined",
            "introduction",
            "favorite_contents",
            "liked_contents",
            "liked_comments",
        ]
  • +추가 : GET만 쓸 경우에 이렇게 하지 않아도 됨..
profile
발전 중...

0개의 댓글