【发布时间】:2011-08-18 01:37:47
【问题描述】:
我有一个将字典构造为模板的 Django 视图。我见过类似的问题,但没有人展示如何使用对象pk 作为键访问模板中的字典值(在我的情况下,keys 是对象的pks)。
查看构造dict的代码:
comment_uservote = {}
if not current_logged_user.is_anonymous():
for comment in comments_all:
try:
co_vote = Vote.objects.get(user=current_logged_user, comment=comment)
comment_uservote[comment.id] = co_vote.vote
except Vote.DoesNotExist:
co_vote = ''
comment_uservote[comment.id] = co_vote
我也尝试过comment_uservote[str(comment.id)],但这也无济于事。
模板(不起作用):
{% for comment in comments %}
{{comment_uservote.comment.pk}} <!--this does not work-->
{% enfor %}
但是,如果我将任何评论的 pk 添加到 comment_uservote,则以下内容有效。
模板(有效,但如果直接替换):
{% for comment in comments %}
{{comment_uservote.16}} <!--this works-->
{% enfor %}
感谢您的帮助。如果您需要我提供更多信息,请告诉我。
【问题讨论】:
标签: django dictionary django-templates django-views