用HTML显示MongoDB文档
Displaying MongoDB Documents with HTML
我正在尝试创建一个HTML表来显示mongodb集合的内容。该集合包含来自小型企业的不同客户订单的数据。某些数据将始终存在于给定的文档中,例如客户姓名和电话号码。然而,每个文档中的一些数据需要有所不同,例如订购的项目,因为一个客户可以订购1个项目,而另一个客户可能订购3个项目。因此,如果我有一个mongodb集合,其中包含每个文档中包含任意数字字段的文档,我如何将它们动态添加到HTML表中以显示文档的内容?作为我正在寻找的显示类型的一个例子,这里是字段的硬编码HTML,我知道它将保持不变。
<!DOCTYPE html>
<html>
<head>
<head>
<title>Invoice Report</title>
<style type="text/css">
body {font-family:sans-serif;color:#4f494f;}
form input {border-radius: 7.5px;}
h5 {display: inline;}
.label {text-align: right}
.ordersBook {float:left; padding-top: 10px;}
.name {width:100%;float:left; padding:3px;}
.wrapper { padding-left: 25px; padding-top: 20px}
</style>
<script type="text/javascript">
var itemRe = /item*/;
}
</script>
</head>
</head>
<body>
<div class="invoice">
<h4>Order Form:</h4>
<table border="1">
<tr>
<th>Name:</th>
<td>{{rows['name']}}</td>
</tr>
<tr>
<th>Created:</th>
<td>{{rows['created']}}</td>
</tr>
<tr>
<th>Phone:</th>
<td>{{rows['phone']}}</td>
</tr>
<tr>
<th>Email:</th>
<td>{{rows['email']}}</td>
</tr>
<tr>
<th>Item:</th>
<td>{{rows['item']}}</td>
</tr>
</div>
<tr>
<th>Quantity:</th>
<td>{{rows['qty']}}</td>
</tr>
<tr>
<th>Color:</th>
<td>{{rows['color']}}</td>
</tr>
<tr>
<th>Quote:</th>
<td>{{rows['quote']}}</td>
</tr>
</table>
</div>
</body>
</html>
动态创建整个表可能会更好,但我不确定在哪里是合适的位置
- 在HTML文件中的javascript函数中
- 或者可能在维护mongodb数据库中信息的pymongo文件中
处理将mongodb文档发送到HTML表单的python代码使用python-Bottle模板。
@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)})
return bottle.template('invoice', rows = result)
我非常感谢有人能提供的任何帮助
查看瓶子模板引擎的文档,您可以使用"if"answers"fors"来实现这一点。
例如,如果您的订单存储在[订单]行,而您不知道有多少,则可以在模板中放置:
%for item in rows['orders']:
<td>{{item}}</td>
%end
或者说,如果您的客户正在订购一个经常延期交货的商品,并且您传入了另一个变量"延期交货",则需要显示一个特殊警告:
%if backorder:
<span>This item is frequently on backorder</span>
%end
我还没有测试过这两个,但我已经使用Django和Flask模板引擎做了类似的事情。我从这里提取了这些样品:
http://bottlepy.org/docs/dev/tutorial.html#templates
以及此处的"格式化输出的瓶子模板"部分:
http://bottlepy.org/docs/dev/tutorial_app.html#using-基于网络的瓶装托列表
希望这能有所帮助!
相关文章:
- MongoDB (php) - 以数组而不是多个属性的形式返回文档属性
- 如何从多个不同的html页面获得mongodb文档的用户输入
- 如何在mongodb(mongose)中覆盖子文档的数组属性
- 如何获取文档数组中元素的计数-MongoDB
- 如何在MongoDB中检索子文档引用
- 如何在mongoDB中过滤子文档
- MongoDB/Mongoose-使用geoNear的聚合;子文档
- 将多级 mongodb 文档转换为 Backbone.js 模型/集合
- 收集订阅者的流星事件,用于在 mongodb 中新插入文档
- MongoDB 删除重复的子文档
- MongoDB findAndModify:>>>查找和更新文档数组中的对象
- 是否可以引用猫鼬(MongoDB)上的子文档
- 更新数组中的嵌入文档 - Mongodb + Node Driver
- 向文档 mongodb 添加新字段
- 如果文档不存在,如何创建文档MongoDB Javascript
- 导入BSON文档MongoDB时出错
- 更新数组从文档(MongoDB)在Javascript不工作
- Mapreduce与内部文档mongodb排序
- 省略子文档MongoDB中的某些结果
- 查询子文档MongoDB Node.JS