Я хочу создать настраиваемый набор атрибутов и методов жизненного цикла, которые разделяются между всеми моделями Sails.js.Наследовать атрибуты и функции жизненного цикла моделей Sails.js
Sails.js автоматически создает и регистрирует объекты модели, вызывая метод Waterline.Collection.extend()
и предоставляя определение модели, найденное внутри каталога /api/models
.
Что было бы лучшим способом расширить определение моей модели от родителя? Я уже пробовал использовать _.extend(sails.config.model.parentModel, childModel)
, но, к сожалению, объект sails
не выставлен глобально (так как это делается после загрузки крюка орма). Я мог бы просто require()
базовую модель во всех моих моделях и расширить ее.
Что будет с чистым подходом, который хорошо сочетается с парусами?
только узнал, что есть 'sails.config.model', что объединяется с каждой моделью в то время как нормализующий. Имеет ли смысл использовать это в качестве базовой модели при реализации функций жизненного цикла? Моя базовая модель определяет метод 'toJSON()'. Что делать, если мои дочерние модели также должны переопределить это? –
В настоящее время я слежу за тем, чтобы поведение родителей 'toJSON() было неповрежденным при переопределении. –