1

嗨,我在使用 Bottle 的模板时遇到问题

我的文件夹结构是这样的:

|views  
 --main.tpl
 --|blog
    --home.tpl

我想做的是:

def home():
    return template('blog/home')  

但它不会工作

我只需调用以下命令就可以让它工作:

def home():
    return template('main')     

但是我希望能够拥有许多不同的文件夹,我知道由于缓存,我仍然需要保留唯一的名称,请不要说使用不同的框架,因为这不是我的选择。

4

1 回答 1

1

您可以尝试将 template_lookup 参数传递给模板函数。查找模板时,template_lookup 会覆盖默认的 .views 路径。但是我相信这只有在模板的名称不在视图文件夹中时才有效。因此,如果您有一个 /views/main.tpl 和一个 /blog/main.tpl 它将不起作用,每个模板都需要一个唯一的名称。这是必需的,因为瓶子只会在之前没有找到模板的情况下查找模板,并将找到的模板存储在以模板名称作为键的字典中。因此,如果模板具有相同的名称,它将使用第一个。

return template("home", template_lookup="full_path_to/views/blog/"
于 2012-12-03T16:46:06.827 回答