Jinja2没有获得模板“不存在模板文件:default.j2”

时间:2019-08-05 15:48:15

标签: python templates jinja2

我创建了两个文件:一个是main.py,另一个是default.j2。当我从都位于其中的“代码”文件夹(main.py和default.j2)运行cmd时,它可以正常工作,但是我尝试在Windows Task Scheduler上自动执行脚本,它显示“没有模板文件:默认。 j2”,即使该模板存在于路径/文件夹中。

下面是我用来检查是否找到路径的代码。

CrossHairWidget = CreateWidget<UUserWidget>(GetGameInstance(), wCrossHairWidget, name);

1 个答案:

答案 0 :(得分:1)

This link注意Windows Task Scheduler从c:\%WINDIR%\System32运行。因此,如果您仅通过Task Scheduler使用文件的文件名,它将查找c:\%WINDIR%\System32\default.j2而不是(code)\default.j2

您可以使用

import os
os.chdir(code_dir)

(run your code)

或者您可以尝试从here获得建议,以防main.py的位置将来可能会更改,或者在其他目录中还有类似的其他文件。因此,一种选择是:

os.chdir(os.path.dirname(__file__))

另一个选择是:

template = os.path.join(os.chdir(os.path.dirname(__file__)), "default.j2")