【发布时间】:2017-06-28 17:41:19
【问题描述】:
我试图查看我的任务表上的内容,但突然间我收到了uninitialized constant 错误。我想不出为什么会这样。该页面工作正常。顺便说一句,我的模型中确实有一个 task.rb。
server@server:~/www/railsapp/$ rails c production
Running via Spring preloader in process 27137
Loading production environment (Rails 5.1.1)
irb(main):001:0> ActiveRecord::Base.connection.tables
(0.3ms) SET NAMES utf8, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483
=> ["ar_internal_metadata", "schema_migrations", "tasks", "users"]
irb(main):002:0> Task.all
NameError: uninitialized constant Task
from (irb):2
irb(main):003:0>
我在下面发布了我的问题的解决方案
【问题讨论】:
-
文件Task.rb是否存在于app/model文件夹中?
-
你换
Task模特了吗? -
是的,我有一个任务模型。
-
@Alejandro Montilla 没有。但是,由于某种原因,它又开始工作了。我改变了一些 JavaScript 的东西,我做了一个
bundle exec rake assets:precompile RAILS_ENV=production然后我重新启动了乘客,问题又回来了。 -
@myhouse 试试这个
Rails.application.eager_load!
标签: ruby-on-rails ruby ruby-on-rails-5