从Python瓶子中以Javascript显示JSON
我试图访问javascript函数中的mongodb记录,以便在网页上显示文档。使用PiMongo的瓶子框架,我尝试首先将mongodb文档编码为JSON对象,以传递给我的javascript函数从Python瓶子中以Javascript显示JSON,javascript,python,mongodb,bottle,Javascript,Python,Mongodb,Bottle,我试图访问javascript函数中的mongodb记录,以便在网页上显示文档。使用PiMongo的瓶子框架,我尝试首先将mongodb文档编码为JSON对象,以传递给我的javascript函数 @bottle.route('/view/<_id>', method = 'GET') def show_invoice(_id): client = pymongo.MongoClient("mongodb://localhost") db = client.order
@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)
甚至
parseJSON({{rows}})
我还尝试将变量unescaped everywhere设置为{{!rows}
有人知道我做错了什么吗?如何使用pymongo获取mongodb文档,并使用瓶子将其显示在网页上?我意识到有人问过类似的问题,但我似乎找不到任何适合我的情况的东西。在同一个标记中不能同时包含“src”属性和javascript代码。将fillTable函数放在新的脚本标记中。问题不在于如何呈现json,而在于如何使用
document.write()
在浏览器中打开一个新选项卡,并将其指向url:“about:blank”。这将给你一个空白网页。现在,右键单击并打开开发人员工具。试着运行document.write('Stuff')代码>来自该上下文。您不应该看到对页面的任何更改
相反,请尝试:
var body = document.getElementsByTagName("body")[0];
body.innerHTML = "Stuff";
请注意其中的区别
当然,还有很多其他方法可以实现这种效果,但这是最简单的方法,不需要任何外部javascript库。JSON,如果将javascript作为对象进行计算的话。您可以:1)将它放在单引号中并反序列化,或者2)只说var obj={{rows}代码>发送到浏览器的HTML页面中有什么内容?如果你“查看源代码”,函数fillTable({document.write({“item1”:“tees”,“name”:“Steve”,“phone”:(890)908-8228”,“qyt2”:“180”,“quote”:“250.75”,“qyt1”:“90”,“qty”:“90”,“color1”:“白色”,“颜色”:“黑色”,“color3”:“红色”,“color2”:“灰色”,“created”:{“$date 13746681935},“item”:“shirts”,“item2”:“});}@DanLecocq我刚刚尝试将fillTable函数更新为var obj={{rows};然后记录。写(obj);但仍然没有显示大写字母。最好使用更新的信息重新编辑问题,以便格式化。抱歉,这是我尝试使用JQuery时留下的,但在删除该src属性后仍然无法工作。
jQuery.parseJSON(rows);
var body = document.getElementsByTagName("body")[0];
body.innerHTML = "Stuff";