django - {% if any([None]) %}show{% endif %} 在模板中创建 TemplateSyntaxError
问题描述
我收到一个奇怪的错误。放入{% if any([None, 1]) %}show{% endif %}
我的 Django 模板会创建一个 TemplateSyntaxError。
实验表明{% if True %}show{% endif %}
有效,所以我知道问题出在any([None, 1])
. 我在 Django 之外的 python 中检查了any([None, 1])
它,它按预期返回 True,所以我的代码似乎应该在模板中工作。我究竟做错了什么?
谢谢你的时间。
解决方案
我认为您应该使用{% if %}
内置 Django 的正确布尔运算符:
https://docs.djangoproject.com/en/3.0/ref/templates/builtins/#boolean-operators
或者按照Nafees Anwar的建议编写自己的模板标签
推荐阅读
- javascript - 带有对象的打字稿中的数组减少
- reactjs - 如何确保父组件将相同的 prop 函数传递给子组件以避免重新渲染
- python - 尝试运行程序并收到此错误
- angular - 完全卸载 Angular 和 NodeJs 并重新安装
- asp.net-core - 如何在 iis 的 .net 核心中从 url 下载 bak 文件?
- javascript - 使用 d3.js 的网络图
- bash - 如何通过bash序列扩展检查一系列文件是否存在?
- javascript - 如何检测用户在 discord.js 中加入的公会?
- batch-file - 用txt中特定位置的变量批量替换数据
- c# - C#:OperationCanceledException:操作被取消