JavaScript 関数内で mongodb レコードにアクセスして、Web ページにドキュメントを表示しようとしています。pymongo で Bottle フレームワークを使用して、最初に mongodb ドキュメントを JSON オブジェクトとしてエンコードして、javascript 関数に渡すことを試みました。
@bottle.route('/view/<_id>', method = 'GET')
def show_invoice(_id):
client = pymongo.MongoClient("mongodb://localhost")
db = client.orders
collection = db.myorders
from bson.objectid import ObjectId
result = collection.find_one({'_id': ObjectId(_id)})
temp = json.dumps(result,default=json_util.default)
print "temp: " + temp
return bottle.template('invoice', rows = temp)
JavaScript 関数を使用して HTML ページ内にドキュメントを表示しようとしても、何も起こりません。ただし、HTML の本文内で {{rows}} として渡そうとしている変数である行を呼び出すと、表示されます。何も表示されないのはJS関数だけのようです。
<!DOCTYPE html>
<html>
<head>
<head>
<title>Invoice Report</title>
<script type="text/javascript">
function fillTable()
{
var obj = {{rows}};
document.write(obj);
}
</script>
</head>
</head>
<body onload="fillTable()">
<div class="invoice">
</div>
<h4>Rows from body</h4> {{rows}}
</body>
</html>
関数でJSONオブジェクトの行を逆シリアル化するためにjQueryを使用しようとしました
jQuery.parseJSON(rows);
jQuery.parseJSON({{rows}}); としても。
また、変数を {{!rows}} として可能な限りエスケープしないようにしようとしました。pymongo で mongodb ドキュメントを取得し、ボトルを使用して Web ページに表示するにはどうすればよいですか? 同様の質問が寄せられていることは認識していますが、特定の状況で機能することがわかったものは何も得られないようです.