我有两个继承相同模型的模型,我想序列化它们。我看不到使用modelserializer类做这件事的方法。
class Answer(models.Model):
submission = models.ForeignKey( Submission, related_name='answers', on_delete=models.CASCADE)
question = models.ForeignKey( Question, related_name='answers', on_delete=models.CASCADE )
class TextAnswer(Answer):
answer = models.CharField(max_length=10000 , blank=True)
class IntegerAnswer(Answer):
answer = models.IntegerField(blank=True)我想要做的就是这样,这样我就可以序列化所有相关的答案,无论它们是什么类型。
class QuestionSerializer(serializers.ModelSerializer):
answers = AnswerSerializer(many=True)
class Meta:
model = Question
fields = '__all__'发布于 2021-07-20 15:56:53
我能想到的一种方法是使用SerializerMethodFields
class QuestionSerializer(serializers.ModelSerializer):
answers = serializers.SerializerMethodField()
class Meta:
model = Question
fields = '__all__'
def get_answers(self, obj)
return obj.answers.all().values_list('answer', flat=True)https://stackoverflow.com/questions/68420147
复制相似问题