我使用以下代码在烧瓶应用程序中指定我的模板目录:
directory = os.path.join(os.path.dirname(os.path.realpath(__file__)), "templates/")
lookup = TemplateLookup([directory])
当我启动烧瓶测试服务器时,这可以正常工作。当我在 python 控制台中手动指定目录时,它也可以正常工作。由于某种原因,它在被 gunicorn 调用时不起作用;相反,任何 get_template 调用都会失败并返回 TopLevelLookupException,即使创建 TemplateLookup 时使用的目录列表与手动运行时完全相同。
我喜欢任何想法。我已经通过以 root 身份运行 gunicorn、验证 root 具有读取权限并验证脚本从 os.getuid() 返回 0 来验证这不是权限问题。