SailsJS蓝图匹配错误的模型

时间:2014-01-15 19:33:44

标签: javascript node.js model-view-controller sails.js

我的模型和Sails的自动蓝图匹配问题很棘手。

当我发布到我的某个端点/answer/create时,我得到500响应,其中包含完全不同模型的验证错误(event模型)。

event模型的端点位于/event/create,但当我发布时,我得到的是404。

我的所有文件都是使用sails generate [model]生成的,并且不包含任何自定义控制器路由。

有没有人见过这个?

1 个答案:

答案 0 :(得分:0)

原来这是关注此截屏视频的结果: http://irlnathan.github.io/sailscasts/blog/2013/09/15/sailscasts-answers-ep1-question-about-using-a-service-to-allow-inheritance-in-a-model/

我通过服务将baseModel继承到多个其他模型中,所以当我运行_.merge()时,它所做的更改会在它们之间持续存在,从而导致不一致。

如果您想这样做,请确保使用_.cloneDeep方法克隆基本模型,否则_.merge会影响它,您的蓝图/操作将无法按预期工作。

在上面的截屏视频中,这将使用户模型中的第12行看起来像这样:

module.exports = _.merge(_.cloneDeep(baseModel) { ... });