Google app engine Jinja 2文件大小格式化程序
我已经安装了Jinja2 2.7.3,并试图以文件大小呈现文件列表 当我仅使用参数vale时,我得到:Google app engine Jinja 2文件大小格式化程序,google-app-engine,jinja2,Google App Engine,Jinja2,我已经安装了Jinja2 2.7.3,并试图以文件大小呈现文件列表 当我仅使用参数vale时,我得到: #using {{fs}} 22528 23786 9769 如果应用FILESIZEFORMATER,则输出为0 #using {{fs|filesizeformat}} 0.0 kB 0.0 kB 0.0 kB 知道我做错了什么吗 模板如下 <!DOCTYPE html> <html lang="es"> <head> <met
#using {{fs}}
22528
23786
9769
如果应用FILESIZEFORMATER,则输出为0
#using {{fs|filesizeformat}}
0.0 kB
0.0 kB
0.0 kB
知道我做错了什么吗
模板如下
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<title>FileBrowser</title>
</head>
<body>
<form action="/admin/filemanager" method="post">
<TABLE>
<TR>
<TD>File</TD>
<TD>Size</TD>
<TD>Size formatted</TD>
</TR>
{% for f in files %}
<TR>
<TD>{{f[0]}}</TD>
<td>{{f[1]}}</td>
<TD>{{f[1]|filesizeformat}}</TD>
</TR>
{% endfor %}
</TABLE>
<input name = "import" type="submit" value="Importar" />
<input name = "delete" type="submit" value="Borrar" />
</form>
多亏了,我才注意到GAE SDK(和生产)中安装的Jinja2版本是2.6
Jinja 2.6在fileformatter中有一个bug,该bug已在中修复
只是在我的项目中手动安装了库,一切正常
希望有人觉得这很有帮助Jinja在2.7之前都有一个版本。GAE默认使用Jinja-2.6,因此您需要升级到新版本
class Handler(webapp2.RequestHandler):
def render_str(self, template, **params):
t = jinja_environment.get_template(template)
return t.render(params)
def render(self, template, **kw):
self.write(self.render_str(template, **kw))
class view(Handler):
def get(self):
files=[['hello.txt',23221],['foo.txt',21211]]
self.render('FileBrowser.html', files=files)