Проблема переопределения Devise :: RegistrationsController - PullRequest
2 голосов
/ 11 июля 2011

Я читал похожие статьи, такие как Переопределить контроллер регистраций devise , но Devise в моем приложении переопределяется неправильно.

Я использую Devise 1.4.2 и Rails 3.0.9на моем Mac (OSX 10.6.8).

# app/controllers/registrations_controller.rb
class RegistrationsController < Devise::RegistrationsController
  def new
    debugger
  end

  def create
    debugger
  end
end

# config/routes.rb
devise_for :users, :controllers => {:registrations => "registrations"}

Затем я запустил свой локальный сервер с параметром --debugger (установлен ruby-debug19), а при доступе к / users / sign_up отладчик нетриггер.

rails server --debugger

Started GET "/users/sign_up" for 127.0.0.1 at 2011-07-11 21:21:46 +0900
Processing by Devise::RegistrationsController#new as HTML
Rendered devise/shared/_links.erb (3.8ms)
Rendered devise/registrations/new.html.erb within layouts/application (20.4ms)

Обновлено: я проверил свою маршрутизацию с помощью «рейковых маршрутов», но маршрутизация для sign_up по-прежнему остается такой, как показано ниже.

user_registration POST /users(.:format) {
    :action=>"create", :controller=>"devise/registrations"}
new_user_registration GET /users/sign_up(.:format) {
    :action=>"new", :controller=>"devise/registrations"}

Я хочу: контроллер указывает «регистрации»"(без" devise / ") когда POST.Чего мне не хватает?

1 Ответ

0 голосов
/ 07 ноября 2011

В вашем файле rout.rb

Вы можете изменить свои маршруты следующим образом:

devise_for :users, :controllers => { :registrations => 'registrations' }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...