我正在尝试在我的项目中使用此应用程序。 https://github.com/streema/django-favit 我已经可以使用这个应用程序的fav unfav部分了。我还想列出每个用户最喜欢的用户。在自述部分,它说使用这个,它将被列出,但我有一个错误
{% with user_favorites <user> "baslik.Entry" as favorite_list %}
{% for fav_obj in favorite_list %}
{{ fav_obj }}
{% endfor %}
{% endwith %}
错误:
^{pr2}$这是用户收藏夹的模板标记部分:
@register.assignment_tag
def user_favorites(user, app_model=None):
"""
Usage:
Get all user favorited objects:
{% with user_favorites <user> as favorite_list %}
{% for fav_obj in favorite_list %}
{# do something with fav_obj #}
{% endfor %}
{% endwith %}
or, just favorites from one model:
{% with user_favorites <user> "app_label.model" as favorite_list %}
{% for fav_obj in favorite_list %}
{# do something with fav_obj #}
{%
{% endwith %}
"""
return Favorite.objects.for_user(user, app_model)
我怎样才能消除这个错误?谢谢。在
在文档中,一个相当常见的约定是,尖括号中的任何内容都是一个占位符,将被实际值替换。在本例中,
<user>
应该被包含实际用户的对象替换。在不过,我必须说,文件仍然没有任何意义。你不能在这样的with语句中使用赋值标记-即使在更正了用户问题之后,这仍然不起作用。令人困惑的是,相同的语法在整个文档中重复出现,但根本不起作用。在
我认为这只是文档中的一个bug,并且怀疑如果您简单地删除“with”这个词,这将起作用。在
要在django中使用自定义模板标记,需要在template中显式地^{} it。
在模板的开头添加这一行(但是在
{% extends ... %}
之后,如果有这样的话):django favit自述中似乎遗漏了这一步。在
相关问题 更多 >
编程相关推荐