django 内建标签与过滤器(二)

date

根据给定格式对一个date变量格式化
注意:
这些格式字符不在模板外的Django中使用。它们被设计为与PHP兼容,以便为设计者轻松过渡。

{{ value|date:"D d M Y" }}

如果value是datetime对象,输出将是字符串 'Mon 06 Nov 2017'。
传递的格式可以是预定义的格式DATE_FORMAT,DATETIME_FORMAT,SHORT_DATE_FORMAT,SHORT_DATETIME_FORMAT

{{ value|date:"SHORT_DATE_FORMAT" }}
#"09/01/2008"  "d/m/Y"
{{ value|date }}
将使用DATE_FORMAT设置中定义的格式化字符串,而不应用任何本地化。

您可以将date和time过滤器结合使用,以呈现 datetime值的完整表示形式。例如:

{{ value|date:"D d M Y" }} {{ value|time:"H:i" }}

default

如果value的计算结果为False,则使用给定的默认值。否则,使用该value。

{{ value|default:"nothing" }}

如果value为""(空字符串),则输出将为nothing。

default_if_none

如果(且仅当)value为 None,则使用给定的默认值。否则,使用该value。
注意,如果给出一个空字符串,默认值将不被使用
例如:

{{ value|default_if_none:"nothing" }}

如果value为None,则输出将为nothing。

dictsort

接受一个字典,返回按参数中所给出的键牌序后的结果。(升序)
例如:

{{value|dictsort:'name'}}

如果value为:

[
    {'name': 'zed', 'age': 19},
    {'name': 'amy', 'age': 22},
    {'name': 'joe', 'age': 31},
]

那么输出将是:

[
    {'name': 'amy', 'age': 22},
    {'name': 'joe', 'age': 31},
    {'name': 'zed', 'age': 19},
]

按价格升序排列书籍:

{% for book in books|dictsort:"book.price" %}
    {{ book.title }} ({{ book.author.name }})
{% endfor %}

dictsortreversed

获取字典列表,并返回按照参数中给出的键按相反顺序排序的列表。(降序)
这与上面的过滤器完全相同,但返回的值将是相反的顺序。

divisibleby

如果value可以呗给出的参数整除,则返回True
{{ value|divisibleby:"3" }}
如果value是21,则输出将是True。

你可能感兴趣的:(django 内建标签与过滤器(二))