0

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

我有 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

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

4

1 回答 1

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
于 2013-01-08T22:38:53.637 回答