无法在rails c生产中加载数据库模型

时间:2018-01-06 15:57:50

标签: ruby-on-rails ruby

aliyun弹性计算服务

app_danci@iZ2ze599ua4y0nvsppbmjhZ:~/myproject$ rails c -e production

Running via Spring preloader in process 13978

Loading production environment (Rails 5.1.4)

2.3.1 :001 > u = User.first

NameError: uninitialized constant User

    from (irb):1

2.3.1 :002 > User.all

NameError: uninitialized constant User

    from (irb):2

为什么我看不到模型用户?

2 个答案:

答案 0 :(得分:0)

你可能错过了一些东西。我认为你有一个users表的迁移。你运行rails db:migrate了吗?如果是这样,也许你只有表,但你没有定义类User

class User < ApplicationRecord
end

或者您的班级User可能是在模块中定义的吗?

答案 1 :(得分:0)

可以犯的常见错误是没有使用适当的嵌套命名空间。如果您的models是在namespace下定义的,请在您的控制台中使用它。可以使用::Namespace::Model等限定名称来调用它。 rails console加载很好并且似乎无法调用Rails模型的可能性极小。希望这会有所帮助。