Jango Taggit的模板标记。

django-taggit-templatetags的Python项目详细描述


这是一个可重用的django应用程序,它向django-taggit添加了一些模板标记。

安装

只需通过pip安装django-taggit-templatetags

$ pip install django-taggit-templatetags

安装并配置django-taggit后,只需将taggit_templatetags添加到settings.py中的INSTALLED_APPS

INSTALLED_APPS = (
...
'taggit_templatetags',
...
)

用法

现在启用了一些templatetags,目前只用于创建标记列表和标记云。

在模板中,需要加载taggit_extras

...
{% load taggit_extras %}
...

标签列表

加载taggit_extras之后,您可以为整个项目(从djangoproject的角度来看)、应用程序(从djangoapp的角度来看)、模型类(要获取模型实例的列表,只需使用其标记字段)创建标记列表。

对于项目的标记,只需执行以下操作:

{% get_taglist as tags %}

对于应用程序的标记,只需执行以下操作:

{% get_taglist as tags for 'yourapp' %}

对于模型的标记,只需执行以下操作:

{% get_taglist as tags for 'yourapp.yourmodel' %}

无论您做什么,都会在tagstemplate变量中有一个标记列表。现在可以对其进行迭代:

<ul>
{% for tag in tags %}
<li>{{tag}} ({{tag.num_times}})</li>
{% endfor %}
<ul>

如您所见,每个标记都有一个属性num_times,该属性声明它被使用了多少次。标记列表按num_times降序排列。

包含标签

为了方便起见,这里有一个包含标签。它是模拟的。例如,对于模型的标记列表,只需执行以下操作:

{% include_taglist 'yourapp.yourmodel' %}

标语云

一种非常流行的浏览标签的方法是tagcloud。此应用程序为此提供了一些标记:

{% get_tagcloud as tags %}

或:

{% get_tagcloud as tags for 'yourapp' %}

或:

{% get_tagcloud as tags for 'yourapp.yourmodel' %}

恭敬地。生成的标记列表按其name属性排序。除了num_items属性之外,还有一个weight属性。它的最大值和最小值可以指定为settings区间读数。

包含标签

即使对于tagcloud,也有包含标记。例如,对于模型的标记云,只需执行以下操作:

{% include_tagcloud 'yourapp.yourmodel' %}

设置

有几个设置要设置:

taggit_tagcloud_min(默认值:1.0)
指定TagCloud标记的权重属性的最小值。
taggit_tagcloud_max(默认值:6.0)
>指定TayCube标签的权重属性的最大值。

如果您想使用粗细作为字体大小,请执行以下操作:

<font size={{tag.weight|floatformat:0}}>{{tag}}</font>

所以权重被转换成整数值。

谢谢

多亏了python和django社区,特别是Alex Gaynor,一个django-taggit的发明者和一个很好的争论对象。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java根据两个数组的值对数组进行排序   具有自签名证书和NTLM代理的java Maven SSL repo错误   java自定义字体按钮不工作AndroidStudio   java通过Spring MVC web应用程序向客户端发送文本文件   Java Spring Web服务SOAP身份验证   ANT property environment=“env”无法在JAVA中检索它,但如果作为ANT命令运行,则可以正常工作   java是为spring mvc rest api或spring boot api对应用服务器的每个新请求创建的服务、存储库和组件的新实例吗?   java私有静态最终字符串未完成其工作   PKCS12的安全Java密钥重新处理   java JPA继承表每类SQLSyntaxErrorException