我安装并工作了可喜的装置。尝试弄清楚用户发送邀请后如何重定向用户。现在,它会将我重定向到根目录。我以为您可以在下面的方法中设置自定义路径,但是没有用。在此先感谢您是否在邀请发送后知道在哪里自定义路径。

 def after_invite_path_for(resource)
    new_profile_path
  end

最佳答案

我偶然发现了您的问题,因为我遇到了同样的问题。据我所知,覆盖after_invite_path_for的预期方法是覆盖Devise::InvitationsController。

class Users::InvitationsController < Devise::InvitationsController
  def after_invite_path_for(resource)
    new_profile_path
  end
end

routes.rb
devise_for :users, :controllers => { :invitations => "users/invitations" }

如果设计可邀请的工作像设计适当的工作一样好,并且您可以在应用程序 Controller 中覆盖其邀请/接受路径之后,那就太好了。我修改了devise_invitable以这种方式工作,并提交了请求请求。我不确定是否会接受它,但是您可以在这里查看:https://github.com/scambra/devise_invitable/pull/240

如果该功能被接受,则可以通过将其放入初始化程序中来修补当前版本的invit,以遵守应用程序 Controller 中after邀请/接受路径的定义:
#make invitable's path functions overridable in application controller
[:after_invite_path_for, :after_accept_path_for].each do |method|
  Devise::InvitationsController.send(:remove_method, method) if ApplicationController.method_defined? method
end

关于ruby-on-rails - 发送邀请后,Rails Devise邀请重定向,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12720612/

10-15 09:11