django-テンプレートフィルタ
フィルターの役割
- Djangoのバックは、処理のために、データテンプレートに戻ります
フィルターの構文
バリュー|フィルタ:パラメータ
内蔵のフィルタの一般的なフィルターテンプレートは、defaultfilters.py
見ることができます
- 日付
- 日付: 'はYmd H:I:S'
- 長さ:長さを取得
- length_is:長さの分析
- ランダム:ランダムな要素、タプルのフィルタリングされたリストを返しますか、
- デフォルト:デフォルト設定
- filesizeformat:フォーマットファイルサイズ
カスタムフィルタ(フォーカス)
- 1つのプロジェクトで
应用
新しい下のtemplatetags
パッケージ - では
templatetags
、新たなパケットの場合extra_filter.py
- で
extra_filter.py
独自のフィルタをカスタマイズ
from django.template.library import Library
register = Library()
@register.filter(is_safe=True)
def ext(value, arg=None):
exts = ["doc", "docx", "exe", "pdf", "ppt", "rar", "txt", "xlsx", "zip"]
return value if value in exts else "unknow"
- で
settings.py
活性化templatetags
INSTALLED_APPS = [
....
'resource.templatetags',
]
- テンプレートページではフィルターを使用して、追加の
load
ラベル
{% load extra_filter %}
- マッチングは、カスタムフィルタの通常の使用を終了しました