2012-08-01 67 views
2

当连接建立此功能是跑:有没有更好的方式来聆听Mongoose模型上的事件?

function setupModelListenersForConnection(c){ 
    var Job = c.model('Job'); 
    Job.addListener('created', function(jobInstance){ 
    }); 
    console.log('Models have been wired!'); 
} 

在架构的工作,我有这样的:

JobSchema.post('save', function(next){ 
    this.db.models.Job.emit('created', this); 
}) 

我做什么不是真正喜欢的是this.db.models.Job,我认为有一个更好的方法来做到这一点;)非常感谢

为什么我需要它?

想象一下创造了一份工作。我想更新工作人员并将其设置为当前工作和新状态(忙碌)。

我喜欢分离模型,这样Job模型不必知道Worker模型。只知道关于工人的一些细节,如身份证和姓名。

感谢

+0

我试图做同样的事情。你有没有得到这个问题的答案? – rorymadden 2013-08-19 09:41:56

+0

不多:/但如果您找到任何答案,请与我联系 – 2013-08-27 20:56:49

回答

0

这是mongoose-lifecycle是怎么做的

JobSchema.post('save', function(next){ 
    var model = this.model(this.constructor.modelName); 
    model.emit('created', this); 
})