config.autoload_paths 不工作,无法在 rails 4 中包含模块
config.autoload_paths not working, unable to include modules in rails 4
我创建了一个简单的模块并将其放在 lib 目录中并包含在控制器文件中。
下面是控制器代码。
class UserController < ApplicationController
include Departments
def create
user_data = Hash.new
user_data["data"] = "hello world!"
user_data["price"] = 12
render :json => user_data
end
end
当我尝试执行它时,我看到以下错误
ActionController::RoutingError (uninitialized constant UserController:: Departments):
我搜索了论坛,看到添加
config.autoload_paths += %W(#{config.root}/lib)
解决了问题,但在我的情况下没有。我正在使用 Rails 4.2.7.1 和 ruby ruby 1.9.3p547.
任何人都可以指出可能是什么问题,谢谢。
我的命名约定有误,我在 lib 文件夹下以我的模块名称创建了一个子目录,然后使用 class name.rb 创建了文件,它成功了。
参考:"Uninitialized constant" error when including a module
我创建了一个简单的模块并将其放在 lib 目录中并包含在控制器文件中。
下面是控制器代码。
class UserController < ApplicationController
include Departments
def create
user_data = Hash.new
user_data["data"] = "hello world!"
user_data["price"] = 12
render :json => user_data
end
end
当我尝试执行它时,我看到以下错误
ActionController::RoutingError (uninitialized constant UserController:: Departments):
我搜索了论坛,看到添加
config.autoload_paths += %W(#{config.root}/lib)
解决了问题,但在我的情况下没有。我正在使用 Rails 4.2.7.1 和 ruby ruby 1.9.3p547.
任何人都可以指出可能是什么问题,谢谢。
我的命名约定有误,我在 lib 文件夹下以我的模块名称创建了一个子目录,然后使用 class name.rb 创建了文件,它成功了。
参考:"Uninitialized constant" error when including a module