【发布时间】:2020-02-15 10:21:25
【问题描述】:
我正在尝试创建一个 mongodb 架构,在该架构中我允许该人匿名发布项目,我已经拥有经过身份验证的用户架构,并且我正在考虑仅使用它来允许用户发布他们的项目!关于我应该如何进行的任何想法?
例如:就像匿名用户的真实性应该是什么一样,它应该是所有用户的相同密钥,还是每个用户的不同密钥等等......我对数据库相当陌生,我很困惑。对我有什么建议吗? 架构用户:
const UserSchema = new Schema({
full_name: {
type: String,
required: true
},
username: {
type: String,
required: true
},
email: {
type: String
},
password: {
type: String,
required: true
},
avatar: {
type: String
},
date: {
type: Date,
default: Date.now
},
projects: [{ type: Schema.Types.ObjectId, ref: "projects" }]
});
谢谢
【问题讨论】:
-
一个问题,你希望匿名用户发布项目,还是希望注册用户(有登录名和密码)匿名发布项目?
-
匿名用户发布项目和数据应该存储在db中
-
对于匿名用户,只需放弃用户模型的概念。允许在没有用户的情况下创建您的项目
-
如果用户是匿名的,你如何将他们与用户模型联系起来?你不能......也许在“项目”上添加一个字段,如“Project.anonymous”=布尔值。这确实意味着您用于创建项目的端点必须不受保护。
-
@Raju 这取决于您在项目中存储的内容,我建议不要存储文件,但简单的 JSON 对象就可以了。
标签: javascript node.js database mongodb mongoose