繁体   English   中英

MongoDB(Mongoose)使数组成为架构的一部分

[英]MongoDB (Mongoose) make array part of schema

我正在使用MongoDB(猫鼬)和Nodejs创建聊天应用程序。 如下所示,我有一个猫鼬允许的架构,但是storeSchema中的 用户必须是一个字符串数组(用户名)。 这是正确的方法吗?

"use strict";
var express = require('express');
var mongoose = require('mongoose');

var userSchema = new mongoose.Schema({
    user: String
});

var messageSchema = new mongoose.Schema({
    msg: String
});

var storeSchema = new mongoose.Schema({
    users: [userSchema], // needs to be an array of users
    channels: {
        general: {
            messages: [messageSchema]
        },
        videogames: {
            messages: [messageSchema]
        },
        programming: {
            messages: [messageSchema]
        },
        other: {
            messages: [messageSchema]
        }
    }
});

var User = mongoose.model('User', userSchema);
var Message = mongoose.model('Message', messageSchema);
var Storage = mongoose.model('Storage', storeSchema);

module.exports = {
    User: User,
    Message: Message,
    Storage: Storage
}

如果希望users是用户名字符串的数组,则在storeSchema其定义为:

users: [String]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM