authenticate_user!похищение регистраций / метод создания - PullRequest
1 голос
/ 14 января 2012

Кажется, у меня проблема в том, что Devise аутентифицирует _ # {роль}!метод угоняет мою попытку регистрации.

Started GET "/client/sign_up" for 127.0.0.1 at 2012-01-14 12:02:52 +0000
  Processing by Client::RegistrationsController#new as HTML
Rendered /Users/robertwwhite/.rvm/gems/ruby-1.9.2-p290/gems/devise-1.5.3/app/views/devise/shared/_links.erb (1.4ms)
Rendered client/registrations/new.html.haml within layouts/application (97.6ms)
Rendered client/_navigation.html.haml (1.6ms)
Rendered shared/_flash_messages.html.haml (0.1ms)
Completed 200 OK in 126ms (Views: 116.4ms | ActiveRecord: 7.2ms)

Started POST "/client" for 127.0.0.1 at 2012-01-14 12:02:58 +0000
  Processing by WishesController#index as HTML
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"vq3wgsQeb4eoxhb3sw2Q2kd4edIoOxIfrzJ/WzJUAn0=", "client"=>{"email"=>"bacon@example.com", "password"=>"[FILTERED]", "password_confirmation"=>"[FILTERED]"}, "commit"=>"Sign up"}
Completed 401 Unauthorized in 13ms

Started GET "/client/sign_in" for 127.0.0.1 at 2012-01-14 12:02:58 +0000
  Processing by Client::SessionsController#new as HTML
Rendered /Users/robertwwhite/.rvm/gems/ruby-1.9.2-p290/gems/devise-1.5.3/app/views/devise/shared/_links.erb (1.0ms)
Rendered client/sessions/new.html.haml within layouts/application (16.5ms)
Rendered client/_navigation.html.haml (1.5ms)
Rendered shared/_flash_messages.html.haml (0.3ms)
Completed 200 OK in 60ms (Views: 38.6ms | ActiveRecord: 6.4ms)

Я попытался переопределить after_signup_path_for (resource_or_scope), но, похоже, он игнорируется.

# app/controllers/application_controller.rb
def after_sign_up_path_for(resource_or_scope)
  random_path
end

Так что пользователи могут 'зарегистрироваться на сайте в первую очередь.Есть идеи?

1 Ответ

2 голосов
/ 14 января 2012

Вы проверили, чтобы убедиться, что ни один из ваших маршрутов не переопределяет маршруты / методы разработки по умолчанию?

Отредактировано HaaR для ясности пользователей с похожей проблемой:

У меня было следующее в моем config / rout.rb выше моих методов devise_for.

match "client" => "wishes#index"

Который перевесил Девиз

devise_for :clients, :path => :client

Перемещая его ниже, он отдает приоритет Devise и по-прежнему передает запрос get соответствующему контроллеру и действию без перехвата запросов POST.

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