Нужен совет с моделями - пост, категория, теги - PullRequest
0 голосов
/ 14 июня 2011

Я хочу создать что-то вроде блога.

Сообщение должно принадлежать категории.Каждая категория имеет много тегов (или подкатегорий?).Сообщение может иметь теги (опционально).

Это лучший способ сделать это?

Category
 has_many :tags
 has many :posts


Tag
 belongs_to :category
 has_and_belongs_to_many :posts


Post
 belongs_to category
 has_and_belongs_to_many :tags

Ответы [ 2 ]

0 голосов
/ 14 июня 2011

Поскольку приведенная вами схема моделей является практически точным переводом написанного вами предложения, да, это должен быть лучший способ!
Для тега, который вы, возможно, хотели бы использовать плагин, смотрите: порядок списка плагинов для тегов по рангу

0 голосов
/ 14 июня 2011

Я бы использовал полиморфные ассоциации .Это даст вам хороший контроль над набором тегов (количество тегов, доступных тегов и т. Д.), Но замедлит поиск по тегам.

Еще один подход - использовать возможности полнотекстового поиска из выбранной вами базы данных.Это даст вам быстрый поиск на основе тегов, но медленные операции с набором тегов.

...