【Flask】flask template not found

2020-02-11  本文已影响0人  李庆文

在使用flask的时候,如果更改了app.py的文件位置,那么多数情况下就会出线temlate not found这个错误,

一 原因

原因是flask在渲染模板文件的时候,是默认在当前目录下找templates文件来实现的。

二查看方式

按住command键,点击Flask构造函数中的template_folder参数

app = Flask(__name__,template_folder)

然后就会发现

# Flask.app
   def __init__(
        self,
        import_name,
        static_url_path=None,
        static_folder="static",
        static_host=None,
        host_matching=False,
        subdomain_matching=False,
        template_folder="templates",
        instance_path=None,
        instance_relative_config=False,
        root_path=None,
    ):

可以看到说默认的模版文件就是当前目录下的templates文件,所以当我们将app.py移动出来导致其和templates文件不是同一级之后,就需要更改templates_folder参数,保证文件可以寻址。

三 解决方式

将构造函数构造成如下形式,确保使得flask能够找到对应的文件进行渲染

app = Flask(__name__,template_folder='./app/templates')

四参考文件

Flask Template Not found [duplicate]

上一篇下一篇

猜你喜欢

热点阅读