How to find polymorphic relation
class Item < ActiveRecord::Base
belongs_to :rulable, :polymorphic => true
end
class foo < ActiveRecord::Base
has_many :items, :as => rulable
end
class bar < ActiveRecord::Base
has_many :items, :as => rulable
end
What is the best way to find items belonging to a foo? I'm currently using somethi开发者_如何学Pythonng like this:
f = Foo.find 1
Item.find_by_rulable_id_and_rulable_type(f, 'Foo')
The following is semantically equivalent and much easier to read and type.
f = Foo.find 1
f.items
精彩评论