我的HTML文件静态规则仍然与模板匹配,即使它们位于子目录中也是如此。将规则更改为不再匹配之后,应用程序可以访问文件。我正在创建一个Google AppEngine应用程序。我正在使用Go语言,但不确定是否相关。我想将模板与单独的模板文件一起使用。因此,应用程序必须读取模板文件。在本地这可行,但是将应用程序上载到GAE后,调用template.ParseFiles()时出现“没有这样的文件或目录”的情况。所以我在想,我必须以某种方式指出模板文件是应用程序文件,以便它们以正确的方式上载。我以为我的模板文件可能是作为静态文件上传的,因此在我的app.yaml- url: /(.*\.html) static_files: \1 upload: .*\.html所以我将它们移到了自己的目录中。但这并没有改变。我尝试在app.yaml中为我的脚本规则添加上载指令,如下所示:- url: /.* script: _go_app upload: templates/.*但这似乎是不允许的。那么谁能告诉我如何从我的GAE应用程序访问模板文件(或任何数据文件)?
3 回答
万千封印
TA贡献1891条经验 获得超3个赞
项目目录中的所有文件都会自动上传。
如果您的应用需要访问它们(在使用模板时就是这种情况),则不能将其标记为静态。这就是第一个解决方案失败的原因。
第二次尝试不起作用,因为上载不是URL描述的成员。
在您的情况下,只需部署您的应用程序,文件就会自动上传并可供您的应用程序使用(您可能需要获取项目的基本路径以构建模板的完整路径)。
- 3 回答
- 0 关注
- 158 浏览
添加回答
举报
0/150
提交
取消