ruby-on-rails - Rails 5.2 到 6.0 的迁移命名空间升级问题:未初始化的常量错误
问题描述
NameError Exception: uninitialized constant
在引用 ActiveRecord 模型的迁移中遇到错误问题。控制台中不存在这些相同的问题,因此我对迁移中发生的与 Rails 控制台不同的情况感到有些困惑。
基本上,我的 ActiveRecord 模型似乎没有正确地自动加载所有内容。
下面是一个在控制台中运行但在迁移中引发错误的简单调用示例:
migration(byebug)> Customer.all
*** NameError Exception: uninitialized constant Customer (call 'Customer.connection' to establish a connection)::Querier
Did you mean? Numerizer
nil
在控制台中,同样的调用有效。
有趣的是,如果我首先调用另一个可以正确加载的模型(例如),那么MyOtherThing.all
如果我下次尝试调用 to 就Customer.all
不会再引发错误。
只是有点难过从哪里开始寻找导致这种情况的原因。谢谢!
解决方案
推荐阅读
- java - 使用 JavaFX 时,Gitlab 上的 Maven 构建失败
- azure-functions - Azure 服务总线主题的 EventGridTrigger
- android - cordova-plugin-firebase 中的电话号码无效
- reactjs - 延迟加载 react-router-dom,webpack 不工作
- appium - Appium 问题:找不到 aapt 请使用 Android SDK 根目录路径设置 ANDROID_HOME 环境变量
- azure - 我们可以将 logicapps 参数分布在多个文件中吗?
- laravel - 从 eloquent 模型的相关表中获取格式化属性
- python - 如何避免“IndexError:列表索引超出范围”错误?
- python - 将 ID 值分配给共享多个特征的 obs
- rest - 用于移动应用程序 iOS 和 Android 的 REST API 身份验证