Могу ли я поделиться тегами между двумя моделями? - PullRequest
0 голосов
/ 01 декабря 2011

Я пробую этот драгоценный камень, но есть ситуация, когда 2 модели должны иметь общие теги (поэтому, если одна создана на модели 1, она должна быть доступна на модели 2).

Возможно ли это, или я должен создатьмодель, которая позволяет мне хранить теги для обеих моделей в одном месте?

Пример

class Hikes < ActiveRecord::Base
  # Name
  # Date
  # Hikers[*]
  # ...
  acts_as_taggable_on :event_types
end

class Events < ActiveRecord::Base
  # Name
  # Date
  # Note
  acts_as_taggable_on :event_types
end

Я хотел бы поделиться "группой" тегов event_types междудве модели.Особенно потому, что я хотел бы создать что-то похожее на поле тега stackoverflow (поэтому с тегом count, чтобы увидеть, сколько раз оно использовалось).Очевидно, что tags_count должен быть разделен между двумя моделями.

Примечание: Поход фактически является событием (поэтому они совместно используют одну и ту же группу тегов), который обрабатывается в приложении по-разному, потому чтоЕсть еще вещи, с которыми я должен справиться.

1 Ответ

0 голосов
/ 01 декабря 2011

Ваш вопрос очень неполный.

Предполагая, что у вас есть модели ActiveRecord для двух "моделей" и тегов, эта структура может работать:

class A < ActiveRecord::Base
  has_many :tags
end

class B < ActiveRecord::Base
  has_many :tags
end

class Tag < ActiveRecord::Base
  belongs_to :a
  belongs_to :b
end
...