没有找到模板。是否有一个钩子来查找被调用的目录/文件?

2021-09-27 05:42:20 发布

您现在位置:Python中文网/ 问答频道 /正文

这个真让我讨厌。你知道吗

我会先说我的本地机器一切正常。但是在服务器上,无论我做什么,结果都是“找不到uri的模板:…”

在我的本地机器上,我在MacOSX上使用了一个Linux虚拟机。我研究了文件名之间的大小写敏感问题。没有骰子。你知道吗

我最初通过在本地调用文件使一切正常。你知道吗

为了确认,我切换到使用mako.directories = app:templates配置,并将模板目录从应用程序视图打包到应用程序:模板文件夹-这是一个小写的新文件夹名称。你知道吗

这个配置不起作用。你知道吗

我决定说得更清楚些。你知道吗

所以我调用了我的mako文件:

 @view_config(renderer='myapp:templates/template1.mak')
 def template1(self):
      pass

还是没有骰子。你知道吗

尝试在本地明确表示。你知道吗

 @view_config(renderer='templates/template2.mak')
 def template2(self):
      pass

仍然失败。你知道吗

当然,当在config中使用mako.directories时,它仍然可以工作。你知道吗

 @view_config(renderer='template3.mak')
 def template3(self):
      pass

有没有一种方法可以钩住它来查看被调用的特定文件路径? 比“模板”大得多的东西/模板.mak'? 你知道吗

以下是金字塔TopLevelException中URI的外观,以供参考:

Exception
=========
"Can not locate template for uri %r" % uri)
mako.exceptions.TopLevelLookupException: Can not locate template for uri
========

'app:templates/template1.mak    
'app.views:templates/template2.mak'