Ruby on rails LoadError:无法自动加载常量
我在Ruby on rails LoadError:无法自动加载常量,ruby-on-rails,ruby,Ruby On Rails,Ruby,我在app/models/Conversation.rb中有一个名为Conversation的模型,在app/lib/Messages/Conversation.rb中有一个名为Messages::Conversation的类。当我试图从控制台调用对话时(期望得到模型),它返回: [1] pry(main)> Conversation LoadError: Unable to autoload constant Conversation, expected .../application
app/models/Conversation.rb中有一个名为Conversation
的模型,在app/lib/Messages/Conversation.rb中有一个名为Messages::Conversation
的类。当我试图从控制台调用对话时(期望得到模型),它返回:
[1] pry(main)> Conversation
LoadError: Unable to autoload constant Conversation, expected .../application/app/lib/messages/conversation.rb to define it
[2] pry(main)> Messages::Conversation
=> Messages::Conversation
[1] 撬(主)>对话
LoadError:无法自动加载常量对话,需要…/application/app/lib/messages/Conversation.rb来定义它
[2] pry(主)>消息::对话
=>消息::对话
我还有一个名为Message
的模型/类,类似于上面的Conversation
。既然我正在给这些文件命名,为什么还要在我的Messages::Conversation
文件中查找Conversation
,而不是在应用程序/模型中查找Conversation
它是否与拥有messages
文件夹和Message
模型有关?如果我将app/lib/messages/..
重命名为app/lib/messages\u test/..
,一切都会正常工作
Before
# config/application.rb
config.autoload_paths += Dir["#{config.root}/lib/**/"]
After
# config/application.rb
config.autoload_paths += Dir["#{config.root}/app/models/"]
config.autoload_paths += Dir["#{config.root}/lib/**/"]
检查config/application.rb,看看在进行这些调整时它是否工作。无法100%确定它是否能工作。尝试::对话
我尝试了,但得到了相同的加载错误:无法自动加载…
错误,它正在查看消息/Conversation
您能添加文件路径和文件夹吗?我打赌这是你的文件路径有问题。后面是我遇到这个问题之前设置的自动加载路径。不幸的是,这两个问题都没有解决。