NodeJS + MongoDB:在现有对象中创建子对象
NodeJS + MongoDB: Creating child objects in exiting objects?
我正在NodeJS上编写一个小公司的配置文件管理系统。我使用MongoDB进行数据存储。我有集合"公司",其中每个对象都是一个公司。当然,公司有几个参数,例如"姓名","电子邮件","电话"。这些都是单个字符串字段。这是我当前的"公司"对象架构。
{
"company_name": "ACME Ltd.",
"company_email": "acmeltd@example.com",
"company_tel": "+49374727384",
"_id": {
"$oid": "4fd115b6e94a7e2408000001"
}
}
这是我保存当前"公司"配置文件的代码:
app.post('/addcompany',function(req,res){
db.collection("companies",function(err,collection){
collection.insert( {
"company_name":req.body.company_name,
"company_email":req.body.company_email,
"company_tel":req.body.company_tel
});
});
res.redirect('/companies');
});
但是,每个公司都有几个(每个公司都不同)供应商,我想将它们存储在"公司"对象中。所以,我认为我应该在我的"公司"对象内创建内部对象"供应商",对象"供应商"必须具有内部对象"supplier1"、"supplier2"等。每个"supplier1"对象都应该有6个参数,如"supplier_name"、"supplier_tel"等。所以,我的问题是,在我的"公司"对象中存储耗材列表的最佳方式是什么,我应该如何使用来自 NodeJS?
更新:我已经像这样修改了我的代码,现在它可以工作了!
app.post('/addcompany',function(req,res){
db.collection("companies",function(err,collection){
collection.insert( {
"company_name":req.body.company_name,
"company_email":req.body.company_email,
"company_tel":req.body.company_tel,
"company_suppliers" : [
{ "supplier_name" : "jane_test", "supplier_tel" : "123456_test", "comment" : "Good supplier_test" },
{ "supplier_name" : "jessy_test", "supplier_tel" : "654321_test", "comment" : "Bad supplier_test" }
]
});
});
res.redirect('/companies');
});
如果您打算将它们存储在公司对象中,我建议您使用为此目的使用数据结构:数组。
MongoDB上关于模式设计的讨论在你在这里做出的决策中很普遍: http://www.mongodb.org/display/DOCS/Schema+Design 特别是看看"嵌入和链接"部分。
相关文章:
- JavaScript名称空间和对象创建
- 从不同的对象创建阵列
- Nodejs-从对象创建可读流
- Javascript对象创建实践
- 插件SDK中的动态或计算对象创建
- 为json对象创建一个动态表
- 对象.创建解释
- 从对象创建嵌套数组失败
- 从JSON对象创建具有超链接的HTML表
- 如何将文档对象创建为HTML页面
- 创建一个类,该类使用es6类语法将Function对象创建为实例
- KineticJS在对象创建(NOOB)后更改属性
- 对象创建中的JavaScript && notation
- Javascript对象创建-创建许多对象
- 从另一个JSON对象创建JSON对象
- 使用linq.js从多个对象创建JSON对象数组
- 如何使用Immutable.js从javascript原始对象创建记录映射
- 在fabric.js中初始化对象创建的子类
- Angularfire:从$FirebaseObject的子对象创建$FirebaseObject
- 为JSON对象创建CRUD