我正在使用谷歌应用引擎开发网络。我使用jinja2
将数据从html发送到main。支付代码。问题是如何从html的javascript中获取数据。请让我知道正确的答案。谢谢。
main.py
def get(self):
db = connect_to_cloudsql()
cursor = db.cursor()
cursor.execute("set names utf8")
cursor.execute("""select no, u_name, age, gender, U_adress, phone, car_num, penalty from User;""")
data = cursor.fetchall()
array_list = []
for row in data:
temp = (row[0], str(row[1]), row[2], str(row[3]), str(row[4]), row[5], str(row[6]), row[7])
array_list.append(temp)
db.close()
data = json.dumps(array_list)
template_values = { 'data': data }
template = JINJA_ENVIRONMENT.get_template('User.html')
self.response.write(template.render(template_values))
和html中的javascript代码。
var table;
$(function() {
$.get(function({ data }) {
var jsonobj = JSON.parse({ data });
table = $('#userindex').dataTable({
"sPaginationType": "bootstrap",
"sDom": "t<'row'<'col-xs-6 col-left'i><'col-xs-6 col-right'p>>",
"bStateSave": false
});
$.each(jsonobj, function(key,value) {
table.fnAddData(
value[0],
value[1],
value[2],
value[3],
value[4],
value[5],
value[6],
value[8]
);
});
});
});
这是我的错误
datatables.min.js:16 GET https://firststep-2016.appspot.com/function%20(%7Bdata%7D)%7Bvar%20jsonobj%20=%20JSON.parse(%7Bdata%7D);table%20=%20 $('404()
答案 0 :(得分:0)
我今天偶然发现了PyV8,我认为这就是你所需要的。 它构建了一个js运行环境,你可以在python中运行js代码来获得你想要的文本。 以下是参考资料。
答案 1 :(得分:0)
这是使用jinja将json数据发送到javascript的一个很好的答案。它可能对你有帮助。
sending data as JSON object from Python to Javascript with Jinja