我正在寻找 django 设置或编程方式,使所有 django 模板标签在值为 None 时显示空字符串。例如,假设我有一些 django 模板:
{{cat}} chases {{mouse}}
如果 cat 和 mouse 都为 None,它将呈现为:
None chases None
我知道我可以使用{{cat|default:""}}
or {{mouse|default_if_none:""}}
但是,我正在寻找某种设置,允许我为所有标签设置默认值,而无需显式添加|default:""
到每个标签。
我还知道一个名为TEMPLATE_STRING_IF_INVALID
。但是,此设置仅适用于无效字符串。没有一个被认为是有效的。
不存在这样的事情。这就是为什么default https://docs.djangoproject.com/en/3.1/ref/templates/builtins/#default and default_if_none https://docs.djangoproject.com/en/3.1/ref/templates/builtins/#default-if-none存在过滤器。这是一个feature;它让你思考你正在做的事情,而不是依赖于一些常常会产生误导的行为。如果变量有可能None
,那么你应该为这种意外情况做好计划。如果变量应该总是有some值,那么“None”表示有问题。如果默认只是渲染一个空字符串,那么您将不知道该值是否未定义或者实际上是一个空字符串。编写连贯的代码并忘记快捷方式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)