2014-01-15 3 views
1

У меня сложная проблема с моими моделями и автоматическим согласованием Sails.SailsJS чертеж соответствует неправильной модели

Когда я отправляю сообщение на одну из своих конечных точек, /answer/create, я получаю ответ 500 с ошибками проверки для другой модели полностью (модель event).

Это конечных точек для event модели будет на /event/create, но когда я отправляю к тому, что я получаю 404.

Все мои файлы были созданы с sails generate [model] и не содержат каких-либо маршрутов пользовательского контроллера.

Кто-нибудь видел это раньше?

ответ

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) { ... });

Смежные вопросы