模板引擎 – 在Bottle中使用SimpleTemplate

我是像Bottle这样的Frameworks的新手,并且正在完成Documentation / Tutorial.

现在我遇到了模板引擎的问题:

我的文件夹视图中有一个名为index.tpl的文件. (这是简单的HTML)
当我使用以下代码时,它可以显示我的html:

from bottle import Bottle, SimpleTemplate, run, template

app = Bottle()

@app.get('/')
def index():
    return template('index')

run(app, debug=True)

现在我想在我的项目中实现这个引擎,不想使用template()
我想在文档中使用它,例如:

tpl = SimpleTemplate('index')

@app.get('/')
def index():
    return tpl.render()

但是,如果我这样做,浏览器会向我显示一个带有该单词的白页

index

写的,而不是加载模板.
在文档中,没有关于我如何使用这种面向对象方法的进一步信息.
我只是无法弄清楚为什么会发生这种情况以及我必须如何做到这一点……

最佳答案 根据您原始问题的精神,这是一个很好,简单的解决方案:

tpl = SimpleTemplate(name='views/index.tpl')  # note the change here

@app.get('/')
def index():
    return tpl.render()
点赞