在作者模型中:
century = models.ManyToManyField(Century)
鉴于:
a = get_object_or_404(Author.objects, id=id)
s = Author.objects.filter(century__in=a).order_by('?')[:3]
错误:
异常值:“作者”对象不可迭代
怎么了?作者可能属于两个世纪,我想从他的世纪/世纪中随机获得 3 位作者。
a = get_object_or_404(Author.objects, id=id)
s = Author.objects.filter(century__in=a.century.all()).order_by('?')[:3]
get_object_or_404()
将类作为第一个参数。例如
a = get_object_or_404(Author, id=id)
更新评论:
文档中的任何地方都没有提到它,但你是对的。事实上,django/shortcuts/__init__.py
查看代码get_object_or_404()
(get_list_or_404()
嗯。你每天都能学到一些东西!