【发布时间】:2011-03-29 06:05:08
【问题描述】:
我在 Rails 3 应用程序上遇到了关系问题。在我的一个模型的索引视图中,我正在显示来自另一个模型的字段,并且它在本地运行良好,但是当我将它推送到 Heroku 时,我得到了可怕的“我们很抱歉,但出现问题时会出现问题”。信息。当我检查 heroku 日志时,错误是“ActionView::Template::Error (undefined method `marca' for nil:NilClass):”
这是马卡模型:
class Marca < ActiveRecord::Base
has_many :modelos
has_many :vehiculos
end
这是 Modelo 模型:
class Modelo < ActiveRecord::Base
belongs_to :marca
has_many :vehiculos
end
我正在尝试在 Modelo 索引视图中调用 f.marca.nombre,以显示“marca”表中的“nombre”字段。我在 Modelo 表中有一个 marca_id 字段。奇怪的是它在本地工作,如果我改变模型中关系线的顺序,有时它可以在 heroku 上工作。然后在向 heroku 推送几次之后,它又停止了工作。
我尝试在 heroku 控制台上运行“Modelo.reset_column_information”。
有什么建议吗?我应该做些什么来加载模型中的更改吗? 谢谢!
【问题讨论】:
-
我在周末添加了几列,并进行了几次迁移。我在发布之前尝试运行'heroku rake db:migrate',它仍然是一样的。为什么要问?
-
您可能忘记了进行迁移,这将使您的某些方法为零。但现在看来不是这样
-
f.marca 中的 f 是什么?这是一个被称为 nil,而不是 marca
-
如果是索引视图导致了问题,您能否发布控制器中的索引操作和索引视图中处理 f 变量的部分?
-
显示与报告错误的行号相关的代码
标签: ruby-on-rails activerecord relationship