первый постер - полу-новичок в Rails. Вот мой вопрос Предположим, у вас есть следующие полиморфные ассоциации многие-ко-многим в Rails:
class Tag < ActiveRecord::Base
has_many :taggings, :dependent => :destroy
has_many :books, :through => :taggings, :source => :taggable, :source_type => "Book"
has_many :movies, :through => :taggings, :source => :taggable, :source_type => "Movie"
end
class Tagging < ActiveRecord::Base
belongs_to :taggable, :polymorphic => true
belongs_to :tag
end
class Book < ActiveRecord::Base
has_many :taggings, :as => :taggable
has_many :tags, :through => :taggings
end
class Movie < ActiveRecord::Base
has_many :taggings, :as => :taggable
has_many :tags, :through => :taggings
end
Теперь мой вопрос, скажем, у меня есть возвращенный массив тегов, и мне нужно взять тег taggable_id и вернуть все книги и фильмы как новый массив. Как бы я это сделал?
Если это сбивает с толку, в более общем смысле, как мне найти все фильмы и книги для данного тега?
Я сразу начинаю думать, что нужны пользовательские средства поиска SQL, но мне любопытно, если я пропускаю некоторые из "магии Rails". :)
спасибо !!