我是一名学生,正在为一家虚构的律师事务所构建一个项目,我试图找出使用mongoDB/mongoose在后端存储律师和客户之间所有聊天消息的最佳方法。这是我当前的schema:
const mongoose = require("mongoose");
const { v4: uuidv4 } = require("uuid");
const chatSchema = new mongoose.Schema({
id: { type: String, default: uuidv4 },
customer: Object,
attorney: Object,
log: [
{
by: String,
sent: Date,
message: String,
},
],
createdAt: { type: Date, default: Date.now },
UpdatedAt: Date,
});
const Chat = mongoose.model("chats", chatSchema);
module.exports = Chat;
什么是最好的方式来实现这一点,这样我就可以轻松地访问前端的消息,并能够在相同的2人或2个不同的人之间创建一个新的聊天,他们的消息被正确地分配给他们?
我尝试为聊天创建一个模式,到目前为止,我已经能够将新的聊天保存到我的集合中。我感到困惑的是如何确保邮件保存在这个集合中,并且每个邮件和邮件发件人都保存在一起。
1条答案
按热度按时间sq1bmfud1#
您可以为客户和律师创建一个单独的模式
userSchema
,并在chatSchema
中引用它们。