Python Django无法在模板上迭代预取\u相关对象
我无法访问模板中与预回迁相关的对象,smb可以帮助吗 views.pyPython Django无法在模板上迭代预取\u相关对象,python,django,model,prefetch,Python,Django,Model,Prefetch,我无法访问模板中与预回迁相关的对象,smb可以帮助吗 views.py def support(request, pk=None): ... else: list_support_tickets = sorted( chain( SupportTickets.objects.filter(Q(status=0) | Q(status=1), requester=request.user).prefetch_r
def support(request, pk=None):
...
else:
list_support_tickets = sorted(
chain(
SupportTickets.objects.filter(Q(status=0) | Q(status=1), requester=request.user).prefetch_related('reply_relation'), #Can't iter object
), key=attrgetter('creation_date'), reverse=True
)
paginator = Paginator(list_support_tickets, 10)
page = request.GET.get('page')
support_tickets = paginator.get_page(page)
args = {'support_tickets': support_tickets,
'form': form
}
print(list_support_tickets)
return render(request, template, args)
在我的模板中,我执行以下操作:
{% for support_ticket in support_tickets %}
...
{% for reply in support_ticket.reply_relation %}
<span class="font-size-small">We have a query, yeah</span>
{% endfor %}
{% endfor %}
提前感谢
支持票。回复关系
是一个管理者,而不是一个查询集
,因此您不能对其进行迭代,您可以使用它来迭代:
{% for support_ticket in support_tickets %}
…
{% for reply_relation in support_ticket.reply_relation.all %}
…
{% endfor %}
{% endfor %}
{%forsupport\u tickets%}
…
{%用于支持\u票证中的回复\u关系。回复\u关系。所有%}
…
{%endfor%}
{%endfor%}
一如既往地棒极了,再次感谢!
{% for support_ticket in support_tickets %}
…
{% for reply_relation in support_ticket.reply_relation.all %}
…
{% endfor %}
{% endfor %}