在{% load custom_filters %}
模板中执行时,{% extends "base.html" %}
一切正常,但是当我将负载移动到 base.html 模板时,过滤器会出现奇怪的行为。这是我的custom_filters.py
:
from django import template
from django.template.defaultfilters import stringfilter
register = template.Library()
# To cut off strings at a specified character, at first occurance. Example:
# time = 19:30:12.123456
# {{ time|cut:'.' }}
# returns: 19:30:12
@register.filter
@stringfilter
def cut(string, cutoff_point):
return string.split(cutoff_point, 1)[0]
当我将它加载到“结束模板”中时,行为符合预期。如果time = 19:30:12.123456
然后{{ time|cut:'.' }}
返回19:30:12
. 当我在base.html
返回值中加载它时19:30:12123456
,与输入相同,但没有“截止点”。
有谁知道为什么?