2015-06-01 2 views
-1

Я работаю над блоком на нескольких сайтах в рельсах. Моя модель данных выглядит примерно так:Рельсы многие-ко-многим с опцией «global»

Site 
has_many :postings 
has_many :posts, through: :postings 


Post 
has_many :postings 
has_many :sites, through: :postings 

Posting 
belongs_to :site 
belongs_to :post 

Я пытаюсь выяснить, лучший способ пометить сообщение как «глобальный», так любой сайт, в том числе того, созданных в будущем, может получить доступ к посту. Прямо сейчас, Post имеет глобальный логический атрибут, и у меня есть обратный вызов after_create на модели сайта, который перемещается по всем глобальным сообщениям и создает проводку, чтобы добавить ее на новый сайт. Это работает прилично, так как позволяет мне легко запрашивать site.posts, но у меня есть ощущение, что должен быть лучший способ сделать это, что позволяет избежать необходимости обратного вызова after_create. Есть идеи?

ответ

Смежные вопросы