0

個人とグループの 2 つのデバイス モデルがあります。登録/確認の同様の動作を共有しようとしています (メールが送信されたことを通知するページにユーザーを送信するか、確認後に編集ページに送信するなど)。

私の問題は、これが個人に対してのみ機能することです。グループではまだ機能していません。

config/outes.rb:

 devise_for :individuals, :controllers => {:confirmations => "Confirmation", :registrations => "Registrations"}

 devise_for :groups, :controllers => {:confirmations => "Confirmation", :registrations => "Registrations"}

app/controllers/registrations_controller.rb:

class RegistrationsController < Devise::RegistrationsController
  def after_inactive_sign_up_path_for(item)
    "/post_sign_up?email=#{item.email}"
  end
end

app/controllers/confirmation_controller.rb:

class ConfirmationController < Devise::ConfirmationsController
  def after_confirmation_path_for(name, resource)
    case resource.class
      when Individual then edit_individual_path resource
      when Group then edit_group_path resource
      else super name, resource
    end
  end
end

上記のコードは、個人に対してのみ機能します。理由はわかりませんが。

4

2 に答える 2

0

私はroutes.rbで提供された行に非常に集中していたので、ファイルの先頭に別の「devise_for:groups」があることに気づきませんでした。どうやらこの場合、deviseは以前の値を上書きします。愚かな間違い。

于 2012-07-09T17:44:12.207 に答える