Я пытаюсь объединить Devise с пользовательским ресурсом RESTful, используя следующий код в файле rout.rb:
resources :users, :only => [:index, :show]
devise_for :users
Однако URL localhost: 3000 / users / sign_up не идет в устройствостраница регистрации, скорее она выдает ошибку «Не удалось найти пользователя с ID = sign_up», поэтому она считает, что URL-адрес указывает на действие show контроллера пользователя.Я обнаружил, что смена порядка строк приводит к предполагаемому поведению:
devise_for :users
resources :users, :only => [:index, :show]
Теперь, когда вы переходите на localhost: 3000 / users / sign_up, вы действительно получаете страницу регистрации и переходите на localhost: 3000 / users / 1 запускает действие show контроллера пользователя, как и предполагалось.
Мой вопрос таков: корректно ли изменяет порядок кода, подобный этому, чтобы заставить устройство работать вместе с ресурсом users?Или что-то глубже идет не так?Я подозреваю, что просто поменять местами эти две строки кода не может быть решением!