过去两天我一直在尝试在新计算机(ruby 1.9.3.p0和rails 3.2.6)上设置我的工作环境,当我尝试运行rails服务器时,我一直收到以下错误rails console:
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'
有没有人知道发生了什么以及如何在没有硬编码路径的情况下让我的应用程序正常工作?
感谢。
答案 0 :(得分:2)
require
在config.autoload_path
之前。