Ruby on Rails关联导致错误

时间:2013-01-08 22:34:19

标签: ruby-on-rails-3 associations

关联我的结果时遇到问题。让我走吧:

我有2张桌子。仪表板,图表。

图表表格有一个dashboard_id字段,因为仪表板上有很多图表。

所以我想在仪表板控制器中获取仪表板和所有相关图表。以下是我到目前为止的情况:

模型

class Dashboards < ActiveRecord::Base
     has_many :charts
     ....
end

class Charts < ActiveRecord::Base
     has_one :dashboard
     ....
end

位指示

class DashboardsController < ApplicationController
     def show 
         #an ID is passed but for testing...
         @dashboard = Dashboards.includes(:charts)
     end
end

查看

/dashboards/show.html.erb

<%=@dashboard.inspect%>

结果

uninitialized constant Dashboards::Chart

有人可以告诉我我做错了什么吗?它看起来很干净,我花了几个小时研究这个。我忽略了什么吗?

1 个答案:

答案 0 :(得分:0)

首先,模型类名称应使用单数(例如DashboardChart等)。同时将Chart信息中心关联更改为:

class Chart < ActiveRecord::Base
  belongs_to :dashboard
  ....
end

现在在您的控制器中(通常使用复数),这应该有效:

class DashboardsController < ApplicationController
  def show 
    #an ID is passed but for testing...
    @dashboard = Dashboard.includes(:charts)
  end
end