TIL 15

이예인·2023년 11월 3일
0

RelatedField

모델 사이의 관계를 나타낸다.

  • PrimaryKeyRelatedField : id(PrimaryKey)를 나타낸다.
  • StringRelatedField : 모델에서 str 로 정의된 메소드의 내용을 표시한다.
class ChoiceSerializer(serializers.ModelSerializer): 
    class Meta:
        model = Choice
        fields = ['choice_text', 'votes']

class QuestionSerializer(serializers.ModelSerializer):
    owner = serializers.ReadOnlyField(source='owner.username')
    choices = ChoiceSerializer(many=True, read_only=True)
    
    class Meta:
        model = Question
        fields = ['id', 'question_text', 'pub_date', 'owner', 'choices']
class Choice(models.Model):
    question = models.ForeignKey(Question, related_name='choices', on_delete=models.CASCADE)
    choice_text = models.CharField(max_length=200)
    votes = models.IntegerField(default=0)

    def __str__(self):
        return self.choice_text

0개의 댓글

관련 채용 정보