Javascript 如何在python中将ObjectId转换为字符串?
我用json将结果传递给javascript。但是当我使用Javascript 如何在python中将ObjectId转换为字符串?,javascript,python,json,serialization,Javascript,Python,Json,Serialization,我用json将结果传递给javascript。但是当我使用var myList={{pass|tmp | tojson | safe}}将结果转换为json时,有一个bug说TypeError:ObjectId(“”)不是json可序列化的。我读过这个问题。但是这个问题的情况与我的有点不同。我必须在flask模板中而不是python文件中将其转换为json。我必须使用命令var myList={{pass_tmp | tojson | safe}将其从html传递到javascript。因此我想
var myList={{pass|tmp | tojson | safe}}
将结果转换为json时,有一个bug说TypeError:ObjectId(“”)不是json可序列化的
。我读过这个问题。但是这个问题的情况与我的有点不同。我必须在flask模板中而不是python文件中将其转换为json。我必须使用命令var myList={{pass_tmp | tojson | safe}
将其从html传递到javascript。因此我想知道是否可以将ObjectId
转换为String
?
以下是我的Flask应用程序代码:
@app.route('/details/', methods=['GET'])
def details():
if request.method == 'GET':
mongoClient = pymongo.MongoClient('localhost', 27017)
name = session['name']
print name
db = mongoClient[name]
results = db[name].find()
json_results= []
for result in results:
json_results.append(result)
# json_tmp = toJson(json_results)
return render_template('details.html', pass_tmp=json_results)
以下是我的模板(javascript)代码:
var myList={{pass|tmp|tojson|safe}
//从Ivy restful服务的myList json数据构建HTML表。
函数buildHtmlTable(){
var columns=addAllColumnHeaders(myList);
对于(变量i=0;i
那么,有人对解决这个问题有什么好的建议吗?我通过将json传递到模板而不是结果来解决这个问题
@app.route('/details/', methods=['GET'])
def details():
if request.method == 'GET':
mongoClient = pymongo.MongoClient('localhost', 27017)
name = session['name']
print name
db = mongoClient[name]
results = db[name].find()
json_results= []
for result in results:
json_results.append(result)
json_tmp = toJson(json_results)
return render_template('details.html', pass_tmp=json_tmp)
并在模板中使用此选项:
var myList={{pass|tmp | safe}}
而不是var myList={{pass|tmp | tojson | safe}
我只需将json传递到模板而不是结果,就解决了这个问题
@app.route('/details/', methods=['GET'])
def details():
if request.method == 'GET':
mongoClient = pymongo.MongoClient('localhost', 27017)
name = session['name']
print name
db = mongoClient[name]
results = db[name].find()
json_results= []
for result in results:
json_results.append(result)
json_tmp = toJson(json_results)
return render_template('details.html', pass_tmp=json_tmp)
并在模板中使用此选项:
var myList={{pass|tmp | safe}}
而不是var myList={{pass|tmp | tojson | safe}}
试试看。我没有信心。我已经解决了这个问题,只需将json传递给模板~~~谢谢你的帮助,无论如何,请尝试一下。我没有信心。我已经通过将json传递给模板解决了这个问题~~~谢谢你的帮助