【问题标题】:Adding realationship with 2 schemas with mongoose and mongodb使用 mongoose 和 mongodb 添加 2 个模式的关系
【发布时间】:2017-10-27 17:25:31
【问题描述】:

我需要在两个模式之间建立一些关系。就像 User 和 cmets 之间的关系。这是我尝试过的代码。

const user = new Schema({
    uname:String,
    email:String,
    password:String,
    created:{ type: Date, default: Date.now }
});

const comment = new Schema({
    user:{
        type : Schema.Types.ObjectId,
        ref : 'user'
    },
    comment:String,
    created:{ type: Date, default: Date.now }
});

我应该如何保存数据以发表评论?我必须传递评论的用户的 ID 吗?或者我可以传递任何唯一值(电子邮件或用户名)。如何传递数据和检索评论数据?我对 NoSQL 数据库很陌生。

【问题讨论】:

标签: node.js mongodb mongoose mongoose-schema mongoose-populate


【解决方案1】:

您可以在评论的架构中创建一个键 userId 作为字符串,userId 将是用户的 _id(创建实例时创建的唯一 id)。

对于每个评论实例创建,都会传递一个userId,以便评论将与该特定用户相关联,您可以通过在查询中传递 userId 来找到它(评论)。

让我们说:

   user1 :
        _id : abc12amcne345ffc
        uname: 'hello',
        email: 'abc@gmail.com',
        password: 'acd224',
        created: somedate

并发表评论

Comment : 

    userId: ' abc12amcne345ffc ',
    comment: 'hello',
    created: somedate

我认为这是一个简单的开始结构。

【讨论】:

    猜你喜欢
    • 2017-10-23
    • 2018-07-04
    • 2016-01-21
    • 1970-01-01
    • 2013-04-07
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 2018-10-18
    相关资源
    最近更新 更多