Является ли выделение пользовательского создания в пользовательскую модель вместо пользовательского контроллера плохой практикой?

#ruby-on-rails #rest #omniauth

#ruby-on-rails #rest #omniauth

Вопрос:

В стандартном приложении Rails с omniauth плохая практика — выделять создание пользователя на пользовательскую модель (user.rb), а не на пользовательский контроллер (users_controller.rb)? Это не кажется RESTful, но я видел, как это делалось совместно с omniauth в нескольких Railscasts, напримерhttp://railscasts.com/episodes/241-simple-omniauth

Спасибо!

Ответ №1:

Пользовательская модель должна создавать нового пользователя, однако контроллер должен быть тем, что запускает этот процесс. Пользователь не должен быть просто волшебным образом создан из воздуха. Что-то на уровне контроллера запускает создание пользователя, будь то вход в приложение, фильтр контроллера или прямой вызов вашего UsersController через POST /users/create .