我一直试图在新计算机(ruby 1.9.3.p0和rails 3.2.6)上设置我的工作环境过去两天,我不断收到以下错误当我尝试运行轨道服务器或导轨控制台:无法加载这样的文件位于lib目录中
application.rb:7:in `require': cannot load such file -- acts_as_loggable/acts_as_loggable (LoadError)
这是我的application.rb中是什么样子:
require File.expand_path('../boot', __FILE__)
require 'acts_as_loggable/acts_as_loggable'
require 'acts_as_abusable/acts_as_abusable'
require 'acts_as_luba/acts_as_luba'
module MyProgram
class Application < Rails::Application
config.active_record.schema_format = :ruby
# Custom directories with classes and modules you want to be autoloadable.
config.autoload_paths += %W(#{config.root}/lib/)
config.autoload_paths += %W(#{config.root}/app/models/game_mechanics)
config.autoload_paths += Dir["#{config.root}/app/admin/"]
config.autoload_paths += Dir["#{config.root}/app/models/"]
config.active_record.pluralize_table_names = true
config.action_view.sanitized_allowed_attributes = ['data-link']
我acts_as_loggable.rb文件位于LIB/acts_as_loggable。除了我在application.rb代码示例中留下的3个文件外,其他所有文件都可以加载。
如果我硬编码的路径/目录(见下文),我的应用程序的作品。
require './lib/acts_as_loggable/acts_as_loggable'
require './lib/acts_as_abusable/acts_as_abusable'
require './lib/acts_as_luba/acts_as_luba'
没有人有任何线索,发生什么事,我怎么能得到我的应用程序没有硬编码路径工作?
谢谢。
''lib'目录不在'$ LOAD_PATH'中。为什么你需要明确的“要求”? Rails自动加载不工作? –
@RenatoZannon是的,它不工作没有要求。如何将lib目录添加到我的$ LOAD_PATH中? – Huy
@RenatoZannon它看起来像Rails 3不再支持自动加载每个http://stackoverflow.com/questions/3356742/best-way-to-load-module-class-from-lib-folder-in-rails-3 – Huy