Подтвердить что ты не робот

Схема CRUD, переопределяющая в sails.js

В соответствии с этим закрытым вопросом в парусах: https://github.com/balderdashy/sails/issues/835

Обозначения CRUD Blueprint "абсолютно, это идет в v0.10"

Я хотел бы изменить чертежи в моей службе sailsjs, чтобы разрешить именованные корни (потребляя в ember). В настоящее время мне приходится настраивать каждый контроллер, который я создаю, с действиями, которые в значительной степени дублируются тем, что уже находится в чертежах.

Я подозреваю, что теперь я могу перенести этот код из своих контроллеров и в область переопределения чертежей, но я не знаю, где разместить этот код.

Любые примеры или даже просто указатель на соответствующий код в парусах. 10. repo будет очень благодарен.

4b9b3361

Ответ 1

Чтобы переопределить чертежи в Sails v0.10, вы создаете папку api/blueprints и добавляете свои файлы чертежей (например, find.js, create.js и т.д.) внутри. Вы можете взглянуть на код для действий по умолчанию в крючке чертежей Sails для запуска главы.

Также добавляется добавление настраиваемых чертежей, но в настоящее время они не привязаны к маршрутам автоматически. Если вы создаете файл /blueprints/foo.js, вы можете связать маршрут с ним в вашем файле /config/routes.js с помощью (например):

'GET /myRoute': {blueprint: 'foo'}

Ответ 2

вы можете добавлять действия с этими именами внутри вашего контроллера, чтобы переопределить поведение по умолчанию

чтобы изменить поведение разрушения

module.exports = {
  destroy: function(req,res){
    Goal.update({ id: req.param('id') }, { deleted: true })
    .exec(function (err, goal) {
            if (err) return res.json(err, 400);
            return res.json(goal[0]);
     });
  }
}

Ответ 3

Можно использовать сборку в чертежах, но с политиками, выполняемыми первыми. Эти политики могут проверять, что пользователь вошел в систему, имеет правильный доступ или аналогичный. Действительно удобно!

В каждой модели у вас есть обратные вызовы как до, так и после хранения данных. В: http://sailsjs.com/documentation/concepts/models-and-orm/lifecycle-callbacks

Для результата чертежей нет обратного вызова по умолчанию. Но не сдавайся. По-прежнему можно использовать сборку в чертежах и только изменять выход. Это может быть не самое элегантное решение, но оно работает хорошо. Ознакомьтесь с моим "взломом" здесь: жизненный цикл парусов