【问题标题】:The route.rb doesn't point to my custom RegistrationControllerroute.rb 没有指向我的自定义 RegistrationController
【发布时间】:2017-02-14 13:38:40
【问题描述】:

我在 dookeeper 和 devise 的基础上构建了一个 ruby​​ on rails 应用程序,现在我将在 Devise::RegistrationsController 中的默认注册控制器更改为我在文件夹 api 中创建的自定义注册控制器。 /用户/注册控制器。 我尝试了几种方法,其中一种是:

devise_for :users,
      only: :registrations,
      controllers: {
        registrations: 'api/users/RegistrationsController'
      }

但我得到这样的错误:

'api/RegistrationsController' is not a supported controller name. This can lead to potential routing problems. See http://guides.rubyonrails.org/routing.html#specifying-a-controller-to-use

我声明 RegistrationController 的方式是这样的:

class RegistrationsController < Devise::RegistrationsController
    respond_to :json
end

当然,我在这个文件文件中创建了一些方法,但是当我发送像 localhost:3000/users 和 json 文件这样的发布请求时,它会将我引向此类类 Devise::RegistrationsController

【问题讨论】:

  • api/users/registrations
  • @Iceman 我像 RichardAE 在下面的答案中所说的那样添加了这个,但它不再起作用了,我还更改了 localhost:3000/api/users 的路径并试图得到结果并得到这个邮递员的错误
  • Api::Users::RegistrationsController#create 中的 LoadError 无法自动加载常量 Api::Users::RegistrationsController,预期 /home/****/ rails hell/****/app/ controllers/api/users/registrations_controller.rb 来定义它

标签: ruby-on-rails ruby ruby-on-rails-3 devise doorkeeper


【解决方案1】:

字符串中不应包含“Controller”一词,并且您也需要将其小写:

'api/users/registrations'

【讨论】:

  • 仍然得到这个 {"errors":{"email":["can't be blank"]}}
猜你喜欢
  • 1970-01-01
  • 2021-10-29
  • 1970-01-01
  • 2021-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多