|
|
1
49
这是因为应用程序目录加载程序本质上与将每个应用程序的模板文件夹添加到模板目录设置相同,例如
问题在于,正如您所提到的,index.html将始终位于app1/templates/index.html中,而不是任何其他应用程序中。如果不修改app_目录加载器并使用内省或传递app信息,就无法轻松地解决此问题,这会变得有点复杂。更简单的解决方案:
更具体的例子是:
然后在视图中:
您甚至可以编写一个包装器来自动为所有视图预先准备应用程序名,甚至可以扩展到使用自省,例如:
_uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu.split(“.”)[-2]假定文件在包中,因此它会将“app1.views”转换为“app1”,以预先设置模板名称。这还假定用户在不重命名模板目录中的文件夹的情况下永远不会重命名您的应用程序,这可能不是一个安全的假设,在这种情况下,只需硬编码模板目录中文件夹的名称。 |
|
|
2
7
我知道这是一个旧线程,但我做了一些可重用的东西,允许更简单的名称间距。您可以将以下内容作为模板加载程序加载。它会发现
这里提供的要点: https://gist.github.com/871567
|
|
|
3
4
应用程序加载程序在应用程序中查找模板,以便在已安装的应用程序中指定模板。( http://docs.djangoproject.com/en/dev/ref/templates/api/#loader-types ) 我的建议是在模板文件的名称前面加上应用程序名称,以避免这些命名冲突。 例如,app1的模板dir如下所示:
|
|
|
sungjun cho · 函数模板重叠多个匹配项 1 年前 |
|
|
Amaterastis · 基类接受子类和内部子类的模板参数 1 年前 |
|
|
111111 · 确定作为模板参数传递的函数的参数类型 1 年前 |
|
|
Sam · 在LaTeX中将图像添加到预制的投影仪中 1 年前 |
|
|
user416983 · 模板函数成员作为模板参数 1 年前 |
|
|
PyOPTProblem · c++如何模板化模板参数的部分实例化? 1 年前 |