实现django-like我需要objects
,它将在{%like object%}中使用。如果我使用object = Article.objects.get(pk=1)
,那么特定文章的类似系统正常工作。但我使用过滤器,因为我需要模板语言的特定字段值。从过滤器或任何其他方法我可以得到对象,所以我喜欢的系统可以工作吗?
视图
settings = Article.objects.filter().values('title','content', ..).order_by('-creation_date')
template_var['settings'] = settings
HTML
{% for x in settings %}
<h2 class="blog-post-title">{{ x.title }}</h2>
<p>{% likes object %} </p>
<p class="blog-post">{{ x.created }} by <a href="#">{{ x.user__username }}</a></p>
<p>{{ x.content }}.</p>
</div>
{% endfor %}
这是一个问题,如何从目前我得到列表的设置中获取每个对象,因为过滤器api
答案 0 :(得分:0)
如果您只使用filter()
,并且不使用values()
,那么您将获得文章的查询集
articles = Article.objects.filter().order_by('-creation_date')
如果您在模板中循环浏览articles
,您将拥有可与模板标记一起使用的article
个对象。您仍然可以像以前一样使用{{ article.created }}
等访问属性。
{% for article in articles %}
<h2 class="blog-post-title">{{ article.title }}</h2>
<p>{% likes article %} </p>
<p class="blog-post">{{ article.created }} by <a href="#">{{ article.user.username }}</a></p>
<p>{{ article.content }}.</p>
</div>
{% endfor %}