【发布时间】:2017-01-24 07:45:58
【问题描述】:
我创建了一个简单的模块并将其放在 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。
谁能指出可能是什么问题,谢谢。
【问题讨论】:
-
你能发布完整的错误吗?
-
添加了完整的错误信息
-
你可以尝试用
config.autoload_paths << Rails.root.join('lib')替换它吗? -
还是一样,使用上述两种语法,当我执行 "bin/rails r 'puts ActiveSupport::Dependencies.autoload_paths'" 时,我看到包含的 lib 目录
标签: ruby-on-rails ruby ruby-on-rails-4 autoload