我有以下型號:與滑軌的has_many關係訪問模型數據
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
attr_accessible :name, :email, :password, :password_confirmation, :remember_me
has_many :rulesets
end
class Ruleset < ActiveRecord::Base
attr_accessible :title, :game_id, :user_id
validates :game_id, presence: true
validates :user_id, presence: true
validates :title, presence: true
belongs_to :user
belongs_to :game
has_many :rules
end
class Rule < ActiveRecord::Base
attr_accessible :description, :ruleset_id
belongs_to :ruleset
validates :description, presence: true
validates :ruleset_id, presence: true
end
我有一個名爲PagesController控制器,其控制該用戶的儀表板,其中,我想顯示的規則的規則集的數量和數量用戶擁有。這是我的控制器
class PagesController < ApplicationController
def home
end
def dashboard
@rulesets = current_user.rulesets
end
end
在我的儀表板視圖,我試圖顯示規則集和規則算作這樣的:
<% if current_user.rulesets.any? %>
<li><%= @rulesets.count %> Ruleset</li>
<li><%= @rulesets.rules.count%> Rules</li>
<% end %>
這將返回規則集,如果我只是嘗試和計數的權數規則集。當我嘗試計算規則時,我得到了這個和「未定義的方法規則」錯誤。我應該如何訪問用戶規則集中的規則?
啊,這個工作。謝謝! – 2013-03-14 15:27:19
我這種情況下,每個規則集都存儲在| r |中目的? – 2013-03-14 15:32:18
不,規則集存儲在@rulesets變量中。給定規則集的所有規則都會在r遍歷規則集數組時存儲在r中。 – johnkoht 2013-03-15 03:43:51