我有一个belongs_to
锻炼的群组资源。锻炼可以是公共的或私人的,并且由锻炼表中的share
列指定(锻炼是一个整数,如果锻炼是公开的,则包含1)。
我正在尝试呼叫与公共训练相关的所有组。我认为这需要通过named_scope
完成,但我不确定语法。
在groups_controller中我假设我会打电话:
@groups = Group.public_groups.all
我应该如何在Group.rb中编写named_scope
? (我在轨道2.3.8)
named_scope :public_groups, ...
答案 0 :(得分:1)
这是一种方法:
class Group < ActiveRecord::Base
belongs_to :workout
named_scope :public, {:conditions => 'workouts.share = 1', :include => :workout}
end
@groups = Group.public.all