【发布时间】:2015-03-08 10:38:33
【问题描述】:
我想知道如何过滤标签。
我的意思是:如果点击这个标签,显示所有有这个标签的文章。 (django - 1.7.4 和 python 2.7.9)
views.py
def tag(request):
context = {}
populateContext(request, context)
return render_to_response('ajouter.html', context, Context({'tout_tags': Article.tags.all()}))
def innertag(request, id):
context = {}
populateContext(request, context)
return render_to_response('innerajouter.html', context, Context({'tag': get_object_or_404(Article.tags, id=id)}))
ajouter.html
{% for tag in tout_tags %}
<a href="{% url "article.views.innertag" tag.id %}">{{ tag.name }}</a>
{% endfor %}
innerajouter.html
<h3>For the tag: {{ tag.name }}</h3>
//How can I filter ? To get only the selectioned tags ?
这是我的项目的视图:
【问题讨论】:
-
你能展示你的模型吗?那真的很有帮助。
-
另外,是标记另一个模型,还是我不熟悉的一些 django 包?
-
他好像在用django-taggit
-
您的代码还有一些问题,我看到不知道能否解决问题。一,您应该在您的视图中将 tagID 更改为 id 。您也没有导入任何标签模型。此外,通常将经理附加到模型的首选方式是
objects = TaggableManager(),但这取决于您。最后,您将不得不检查您正在使用的 django-taggit 的文档,以了解如何从数据库中获取标签并通过您正在使用的管理器使用这些标签过滤其他内容。 -
好的,谢谢您的宝贵时间