маршрут для разработки формы регистрации - PullRequest
2 голосов
/ 10 марта 2012

В вики Devise есть инструкции https://github.com/plataformatec/devise/wiki/How-To:-Display-a-custom-sign_in-form-anywhere-in-your-appfor создание формы входа в любом месте на сайте.Я хотел разместить форму sign_up на домашней странице.

Форма входа в систему, которую они рекомендуют, начинается следующим образом

<%= form_for("user", :url => user_session_path) do |f| %>

На основании того, что этот пример и это вывод из маршрутов рейка

new_user_registration GET /users/sign_up(.:format) devise/registrations#new

Iзапустил форму регистрации на домашней странице моего сайта

<%= form_for("user", :url => new_user_registration_path) do |f| %>

Когда я набрал скорость на сервере и попытался зарегистрировать пользователя, я получил эту ошибку

No route matches [POST] "/users/sign_up"

Try running rake routes for more information on available routes. 

Одна вещьЯ замечаю, что rake routes показывает запрос GET для new_user_registration, в то время как мое сообщение об ошибке показывает POST.Не уверен, что это важно.

Routes.rb



root :to => "home#index"
devise_for :users
resources :users

1 Ответ

1 голос
/ 10 марта 2012

Проблема была в том, что это

new_user_registration_path

это неправильный путь. Это идет к «новому» действию

Это должно было быть

user_registration_path

, который переходит к действию "создать"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...