我正在Django CMS中建立一个网站。在我的项目的模板目录中是base.html。
我正在写一个应用程序" was_this_helpful"在某些页面上添加一个对话框,供用户提供反馈。我想将was_this_helpful / templates中的文件包含到base.html中,但它说该文件不存在。
{% include 'was_this_helpful/dialog.html' %}
我的文件结构如下:
- was_this_helpful
- templates
- was_this_helpful
- dialog2.html
- dialog.html
- required app files
我在某处读到有时候模板文件需要更深层次才能找到模板,这就是为什么我创建了dialog2.html,但它仍然没有工作。我不明白如何做到这一点。基于我所阅读的内容,它应该有效。它是不同的,因为我不在另一个应用程序,只有模板目录?
答案 0 :(得分:1)
如果不了解更多,很难判断它是否是一个简单的解决方案。
您编写代码的方式,没有was_this_helpful / dialog.html - 您的was_this_helpful中只有一个dialog2.html,因此was_this_helpful / dialog2.html将成为参考路径。
我总是在模板文件夹中创建另一个文件夹,其中包含模板文件夹上方的目录名称。就像你的was_this_helpful第二个目录一样。我发现这使得扩展base.html文件变得更加容易。
你总是可以在路径调用前两个句点完成它,所以../ was_this_helpful / templates / dialog.html
如果你也没有运气,那么也有{%extends%}方法也可以完成你想要做的事情。 祝你好运!