Rails找不到我的控制器之一

时间:2015-06-30 11:09:26

标签: ruby-on-rails

我正在尝试在我的Devise注册中自定义后注册路径。根据{{​​3}},我创建了一个名为therapists_registrations_controller.rb的新控制器,但是当我启动服务器并加载页面时,我得到ActionController::RoutingError (uninitialized constant TherapistsRegistrationsController)

现在therapists_registrations_controller.rb位于app/controllers/api/therapists_registrations_controller.rb,所有其他控制器都加载,我没有使用autoload_paths或其他任何游戏。可能是什么问题?

这是在Rails 3.2.11上。控制器的代码是:

class TherapistsRegistrationsController < Devise::RegistrationsController

  protected
  def after_inactive_sign_up_path_for(resource)
    "http://google.com"
  end  
end

1 个答案:

答案 0 :(得分:3)

其中一个原因可能是 班级名称 。如果您在 app / controllers / api 中有therapists_registrations_controller.rb,那么 类名 应为< / p>

class Api::TherapistsRegistrationsController < Devise::RegistrationsController

<强> 更新

你也应该改变这个

devise_for :therapists, :controllers => { :registrations => "therapists_registrations" }

devise_for :therapists, :controllers => { :registrations => "api/therapists_registrations" }