python - Django - 'elif'。您是否忘记注册或加载此标签?
问题描述
我正在开发一个简单的 Django 应用程序。下面的代码是否有效?我的代码:
{% if request.session.role is "Manager" %}
{% extends 'manager_base_nav.html' %}
{% elif request.session.role is "Agent" %}
{% extends 'agent_base_nav.html' %}
{% else %}
{% extends 'customer_base_nav.html' %}
{% endif %}
解决方案
不,这是无效的。正如关于模板继承的文档所说:
如果
{% extends %}
在模板中使用,它必须是该模板中的第一个模板标签。否则,模板继承将不起作用。
因此,您应该使用不同的模板,每个模板都继承自不同的基本模板,并让视图逻辑决定使用哪个模板。
推荐阅读
- centos - 如何在 CentOS 上禁用 Nouveau 内核驱动程序
- powershell - Azure DevOps Release Pipeline Inline Powershell 脚本无法运行 python unittest 套件
- .net - 无法使用 ngrok 远程调试已部署的 microsoft bot
- java - 如何在Java中调用给定特定参数类的不同方法
- ios - 从框架中的协议中抑制变量名称长度
- javascript - 从 React.js 组件到 Node.js 服务器的 POST 请求出现问题
- javascript - 'to.include' 在'to.eventually.equal' 工作的地方不起作用
- laravel - 如何将 Laravel 数组验证错误减少到单个消息
- java - 输入到 CriteriaQuery.from 方法时,我的实体类未被正确接受
- javascript - “Chrome PDF 查看器”扩展“mhjfbmdgcfjbbpaeojofohoefgiehjai”在哪里?