Flask 的 templates 目录不能自己指定吗?

2016-07-03 15:27:11 +08:00
 chaogg

文档中是这么说的: Flask 将会在 templates 文件夹中寻找模版。因此如果你的应用是个模块,这个文件夹在模块的旁边,如果它是一个包,那么这个文件夹在你的包里面:

Case 1: 一个模块:

/application.py
/templates
    /hello.html

Case 2: 一个包:

/application
    /__init__.py
    /templates
        /hello.html

这是不是规定死了模板的位置?我在代码中调用 render_template 发现自己指定模板目录是不行的

5804 次点击
所在节点    Flask
4 条回复
petelin
2016-07-03 16:14:04 +08:00
创建 flask 对象时候,是需要传一个模块一般是__name__过去,你改下就行了,那个是被当作根地址。可以从这里入手。
chaogg
2016-07-03 16:53:07 +08:00
@petelin 这倒是个思路。改了这个,会不会破坏 Flask 的其他依赖?
Pythagodzilla
2016-07-03 22:59:40 +08:00
Flask 的 constructor 不是有个 template_folder 的参数么
alphadog619
2016-09-30 13:21:01 +08:00
可以 如果项目使用蓝图的话 main = Blueprint('main',__name__,template_folder='template'),就是指定模板文件夹为当前包中的 template

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/289972

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX