首页 > 解决方案 > ArgumentError - Api::V2 的副本已从模块树中删除,但仍处于活动状态!:

问题描述

我一定在某些方面搞砸了我的 api。我现在收到以下错误消息:

ArgumentError - Api::V2 的副本已从模块树中删除,但仍处于活动状态!:

我不知道如何解决这个问题。我的一些 Api 控制器如下所示:

class Api::V2::UsersController < ApplicationController

但是以前是这样的:

module Api
  module V2
    class Api::V2::UsersController < ApplicationController

什么是正确的格式,我该如何解决这个问题?谢谢你。

编辑:

.../active_support/dependencies.rb:457: warning: already initialized constant Api
.../active_support/dependencies.rb:457: warning: previous definition of Api was here

LoadError - Unable to autoload constant Api::UsersController, expected .../app/controllers/api/users_controller.rb to define it:

我也有api/users_controller.rbapi/v2/users_controller.rb两者似乎都有同样的问题。

标签: ruby-on-railsrubyapiactivesupport

解决方案


为了class Api::V2::UsersController < ApplicationController工作,您的文件夹结构应该是/controllers/api/v2/users_controller.rb并且application_controller.rb文件应该在/controllers.


推荐阅读