我在两个模型之间具有以下外键关系:
class Text(models.Model):
textcontent = models.CharField(max_length=100)
class Comment(models.Model):
text = models.ForeignKey(ModelA,
on_delete=models.CASCADE,
null=True,
blank=True)
commentContent = models.CharField(max_length=100)
因此,一个文本可以有多个注释,但是一个注释只能分配给一个文本。
在serializers.py
中,我有以下内容:
class TextSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Text
fields = ('url',
'id',
'comment_set'
)
如您所见,我还想通过'comment_set'
显示属于一个文本的注释集。
但是,当我创建一个文本实例(不提供注释)时,我在命令行上得到了以下内容:
“评论集”:[ “这是必填栏。” ]
为什么需要?我已将blank&null参数设置为True。 我该如何解决?
答案 0 :(得分:0)
您可以在元类中将read_only_fields
--[DRF-Doc]设置为
class TextSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Text
fields = ('url', 'id', 'comment_set')
read_only_fields = ('comment_set',)