我正在使用自定义操作订阅模型更新,相关代码如下:
getCurrent: (req, res) => {
Session.findOne({sessionStatus: 'in-progress'})
.populate('participants')
.populate('messages')
.exec((err, session) => {
if (err) {
return res.json({
error: err
})
}
// check if we have any active (in-progress) session in database
if(!session) {
return res.json({
error: { message: 'No in-progress session found.'}
})
}
// subscribe our client socket to this record.
if (req.isSocket) {
Session.subscribe(req, session);
}
return res.json(session);
});
}
更新会话模型时一切正常我得到一条“更新”消息但当我通过 POST:/ session / id / message 向会话添加新消息时,我收到'addedTo'消息两次,不知道我做错了什么。使用Sails 0.12.4(最新版)。
更新
会话模型:
module.exports = {
attributes: {
sessionName: {
type: 'string',
required: true
},
sessionStatus: {
type: 'string',
enum: ['created', 'in-progress', 'ended'],
defaultsTo: 'created',
required: true
},
activeCaseNo: {
type: 'integer',
required: false
},
currentScreen: {
type: 'integer',
required: false
},
participants: {
collection: 'SessionParticipant',
via: 'session',
required: false
},
messages: {
collection: 'SessionMessage',
via: 'session',
required: false
},
}
};