2010-11-24 85 views
1

我有一個團體資源,belongs_to鍛鍊。鍛鍊可以是公共或私人的,並且在鍛鍊表中列share(如果鍛鍊是公開的,則爲整數幷包含1)指定。如何通過另一個資源爲一個資源編寫named_scope?

我正在嘗試呼叫與公共鍛鍊相關的所有組。我認爲這需要通過named_scope完成,但我不確定語法。

在我假設我會打電話的groups_controller:

@groups = Group.public_groups.all 

我應該怎麼寫在Group.rb的named_scope? (我在軌2.3.8)

named_scope :public_groups, ... 

回答

1

下面是做這件事:

class Group < ActiveRecord::Base 
    belongs_to :workout 
    named_scope :public, {:conditions => 'workouts.share = 1', :include => :workout} 
end 

@groups = Group.public.all 
+0

真棒人。工作很好。只是不那麼熟悉w/named_scope呢。 – bgadoci 2010-11-24 05:21:14