我有一个叫做交易的应用。在这个应用程序中,我有一个名为BatchFile的模型。在我的views.py文件中,我是ListView的子类(以及其他)。默认行为是django认为batchfile_list.html应位于:
templates/transactions/batchfile_list.html
那很好,但文件夹越来越拥挤。我可以将“templates / transactions / batchfiles”添加到TEMPLATE_DIRS,但是因为默认行为是查找appname / modelname_type.html,这需要我将模板放入:
templates/transactions/batchfiles/transactions/batchfile_list.html
当我真的喜欢它时:
templates/transactions/batchfiles/batchfile_list.html
或我的最佳结果:
templates/transactions/batchfiles/list.html
是否有配置选项可以让我这样做?我知道最佳结果可能不是很干净,但我希望至少有一个不太理想的结果。
谢谢!
答案 0 :(得分:2)
最简单的方法是指定template_name
:
class MyListView(ListView):
template_name = "transactions/batchfiles/list.html"
另一种方法是覆盖get_template_names
:
class MyListView(ListView):
def get_template_names(self):
return ["transactions/batchfiles/list.html"]
请注意,它需要返回可能的模板位置列表。
在这种情况下,只有一个是所需的位置。