mongodb, 商家数据库schema如何建立?
简化来说,一个shop一般有一些属性类似:
那么在对这个schema进行操作的时候,通常是有一个账户来访问node.js里面的路由。
比如账户名称是shopName,密码是password
但是现实情况是,一个店铺可以有好几个帐号,帐号之间的权限会不一样。比如,店小二的帐号权限只能添加一个商品。而老板的帐号权限可以删除一个订单。
这个在mongodb里面实现的大致思路是什么呢?
module.exports = function( mongoose) {
var ShopSchema = new mongoose.Schema({
shopName: { type: String, unique: true },
password:{type:String},
address: { type: String},
location:{type:[Number],index: '2d'},
shopPicUrl: {type: String},
shopPicTrueUrl:{type: String},
mark: { type: String},
open:{type:Boolean},
shopType:{type:String},
dish:{type:[DishSchema]},
order:{type:[{
orderId:{type: String},
date:{type: Date,default: Date.now},
dish:{type: [DishSchema]},
userId:{type: String}
}]}
});
var DishSchema = new mongoose.Schema({
dishName: { type: String},
tags: { type: Array},
price: { type: Number},
intro: { type: String},
dishPic:{ type: String},
index:{type:Number},
comment:{type:[{
date:{type: Date,default: Date.now},
userId:{type: String},
content:{type: String}
}]}
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
店铺是一个单独的账号,下面搞一个数组,纪录用户名密码和登陆权限。
{
shopname:XXXXX,
accouts:[
{
}]
}
然后建立一个索引 accouts.loginname unique 的
用mongo了就用mongo的方式思考,现在的ODM很多还是ORM的思路设计的,我倾向不用。直接写json
当然,你可以把用户的详细信息塞到loginname那一层比如头像介绍什么的,另外建表也行