python django如何在模板中过滤当前用户的object_set.all

时间:2010-09-26 12:29:41

标签: python django

http://pastebin.com/Aa5rJxv8

我上面有django问题,我试着解释一下 我需要显示当前用户对用户书架上的书籍给出的评级

感谢

1 个答案:

答案 0 :(得分:2)

在模板中执行此操作的一种方法是定义custom filter。此自定义筛选器可以接受查询集和当前登录的用户作为参数,并执行必要的筛选。

@register.filter
def filter_by_user(queryset, user):
    """Filter the queryset by (currently logged in) user"""
    return queryset.filter(added_by = user)

在模板中:

<td>{{ book.rating_set.all|filter_by_user:user|safeseq|join:", " }}</td>