是否可以在模板中使用Bottle / Flask的语句和函数?

时间:2018-09-25 18:39:33

标签: python python-3.x flask bottle

我想知道我是否可以将static_file()用于如下的模板:

{{ static_file( filename, root=filepath, download=True ) }}

可以这样写吗?

如果可以的话,那么我将如何使用从wsgi python文件中获取的值来替换语句中的变量(在我的情况下为filenamefilepath

通常,我们是否可以在模板系统中使用Bottle的框架语句和函数,或者可以在wsgi python应用程序中使用它?!

2 个答案:

答案 0 :(得分:2)

否,static_file用于返回静态文件;模板用于返回动态内容。他们不能互操作。

您在代码(路由处理程序)中使用static_file,在模板中使用{em>不是。

例如(from the documentation

@route('/static/<filepath:path>')
def server_static(filepath):
    return static_file(filepath, root='/path/to/your/static/files')

答案 1 :(得分:0)

静态文件是路由选项,它实际上并不提供文件。您可以使用函数返回打开的文件二进制数据,然后使用javascript提示下载。