【发布时间】:2017-08-30 16:42:53
【问题描述】:
我在使用 django + restful 框架时遇到了一个问题。
这是我的意图:
章节很多,每章有很多词,每个词都有很多扩展解释,这些解释是用户提供的,所以有些是无效的,在后台我可以设置这些扩展字段is_alive 改为 错误。
在views.py中,目前我将所有这些数据发送到前端,我尝试了很多方法来过滤掉这些无效数据,但都失败了。
代码如下:
models.py
class Chapter(models.Model):
chap = models.IntegerField('chaptername')
class Word(models.Model):
chapter = models.ForeignKey('Chapter', related_name='voca')
word = models.CharField('name', max_length=255)
class Expand(models.Model):
belong = models.ForeignKey('Word', related_name='expand')
explansion = models.TextField('description')
is_alive = models.BooleanField('status', default=True)
serializers.py
class ExpandSerializer(serializers.ModelSerializer):
class Meta:
model = Expand
fields = ('explansion', )
class WordSerializer(serializers.ModelSerializer):
expand = ExpandSerializer(many=True)
class Meta:
model = Word
fields = ('id', 'word', 'expand')
class ChapterSerializer(serializers.ModelSerializer):
voca = WordSerializer(many=True)
class Meta:
model = Chapter
fields = ('id', 'chap', 'voca')
views.py
def getChapter(request):
if request.method == 'GET':
chapter = Chapter.objects.get(pk=1)
serializer_c = ChapterSerializer(chapter)
return JsonResponse(serializer_c.data)
【问题讨论】:
标签: django django-rest-framework django-queryset