最近学习python flask框架,这个框架简洁容易,非常适合用于PYTHON程序的界面化开发,既给python程序套一个图形化的壳子。在使用过程中发现调用render_template给模板网页传参数的时候,如果直接用json里面如果有中文就会有问题。
最后解决方法为:
1、在主程序中增加app.config["JSON_AS_ASCII"] = False
from flask import Flask, redirect, url_for, request,render_template,jsonify
import json
import sys
app = Flask(__name__)
app.config["JSON_AS_ASCII"] = False
@app.route('/')
def SyncDatabase():
syncdb_tab=[['未录入同步库','等待','中文','','']]
system_dict["tab_data"]=syncdb_tab
return render_template('SyncDatabase.html',parameter_dict=system_dict)
if __name__ == '__main__':
app.run(host='0.0.0.0',port=5000,debug=True)
2、在模板网页中增加|tojson
<script type="text/javascript">
var showdata ={{ parameter_dict["tab_data"]|tojson }};
</script>
这下就完美解决。