我正在努力寻找进入DRF的途径,却无法将相关数据导入我的端点
型号.py
class ChapterMark(models.Model):
title = models.CharField(max_length=100, null=True)
episode = models.ForeignKey(Episode, on_delete=models.CASCADE)
start_time = models.CharField(max_length=20)
class Episode(models.Model):
title = models.CharField(max_length=100, blank=False)
show = models.ForeignKey(Show, on_delete=models.PROTECT)
序列化程序.py
class ChapterMarkSerializer(serializers.ModelSerializer):
class Meta:
model = ChapterMark
exclude = ('')
class EpisodeSerializer(serializers.ModelSerializer):
chapters = ChapterMarkSerializer(source='id')
class Meta:
model = Episode
depth = 1
我得到的错误是
Got AttributeError when attempting to get a value for field
start_time
on serializerChapterMarkSerializer
. The serializer field might be named incorrectly and not match any attribute or key on theint
instance. Original exception text was: 'int' object has no attribute 'start_time'.
我的猜测是,通过source='id'
建立的关系根本不起作用,但到目前为止,我发现的一切都指向这样做
章节和剧集之间有一种多对一的关系(因此每一集都有许多章节)。我肯定我错过了一个重要的部分
要获得反向关系对象,请使用
chaptermark_set
作为章节源字段,同时不要忘记添加many=True
,因为插曲可以有多个章节:相关问题 更多 >
编程相关推荐