Я использую devise и хочу указать другую переадресацию после обновления пользователя на основе условного оператора. Я сделал это https://github.com/plataformatec/devise/wiki/How-To:-Customize-the-redirect-after-a-user-edits-their-profile, и он не вызывает мой пользовательский метод after_update_path_for.Придумайте custom after_update_path_for не вызывается (Rails 4)
routes.rb
devise_for :users, :skip => [:registrations], :controllers => { :registrations => :registrations }
as :user do
get 'users/edit' => 'devise/registrations#edit', :as => 'edit_user_registration'
put 'users/:id' => 'devise/registrations#update', :as => 'user_registration'
end
Причина я имею регистрацию пропуска, потому что я не хочу иметь новое и создавать маршруты для пользователя. Я не уверен, что проблема связана с маршрутами или чем-то еще.
Вот registrations_controller.rb
class RegistrationsController < Devise::RegistrationsController
protected
def after_update_path_for(resource)
binding.pry
if current_user.position == "owner" && current_user.sign_in_count == 1
hub_landing_path
end
end
end
Любая помощь очень ценится. Это действительно потрясает меня, поэтому, если у кого-то есть идеи, которые я бы хотел попробовать.
спасибо. Проблема была в этом маршруте. –