LittleDen
Новичок
Принадлежность категории/категориям (теоретический)
Есть у меня автомобильный сайт (Транспорт Красноярска, если кому интересно). Сам сайт крутится на Mambo. Многое в этом движке меня устраивает, и столько же -- нет.
Хочу расширить функционал работы со статьями. То есть, прокатегоризировать их (например, "драйв-тест", "автомузыка", "автоправо" и так далее, с целью заведения целевых разделов на сайте). На данном этапе мне видится два варианта решения задачи:
1. Ключевые слова (ака "названия категорий") вписывать в мета-теги для статьи. Они хранятся в базе вместе со статьёй, но используются только для последующей вставки в HTML. Можно подправить код движка, чтобы при соответствующем запросе учитывались и поля мета-тегов.
2. В таблице с контентом заводится ещё одно поле для указания собственно категории/категорий, которым соответствует статья. И вот тут, собственно, и кроется задача. Сталкиваюсь с таким первый раз, поэтому чрезвычайно интересно послушать мнение опытного народа. Навскидку видится опять же два варианта:
2.1) Бинарное поле, в котором каждый включенный бит означает соответствие той или иной категории (таблица соответствия битов/категорий может храниться хоть в текстовом файле, это непринципиально). Преимущество такого подхода в том, что поиск можно производить с помощью логических побитовых операций. Из недостатков видится тот момент, что при большом количестве категорий размер этого бинарного поля будет некислым.
2.2) Поле типа ENUM/SET, в котором через запятую будут указаны числа, соответствующие номерам категорий. Из недостатков видится некоторая сложность работы с подобным типом поля.
А как народ в своих проектах реализует подобное?
Есть у меня автомобильный сайт (Транспорт Красноярска, если кому интересно). Сам сайт крутится на Mambo. Многое в этом движке меня устраивает, и столько же -- нет.
Хочу расширить функционал работы со статьями. То есть, прокатегоризировать их (например, "драйв-тест", "автомузыка", "автоправо" и так далее, с целью заведения целевых разделов на сайте). На данном этапе мне видится два варианта решения задачи:
1. Ключевые слова (ака "названия категорий") вписывать в мета-теги для статьи. Они хранятся в базе вместе со статьёй, но используются только для последующей вставки в HTML. Можно подправить код движка, чтобы при соответствующем запросе учитывались и поля мета-тегов.
2. В таблице с контентом заводится ещё одно поле для указания собственно категории/категорий, которым соответствует статья. И вот тут, собственно, и кроется задача. Сталкиваюсь с таким первый раз, поэтому чрезвычайно интересно послушать мнение опытного народа. Навскидку видится опять же два варианта:
2.1) Бинарное поле, в котором каждый включенный бит означает соответствие той или иной категории (таблица соответствия битов/категорий может храниться хоть в текстовом файле, это непринципиально). Преимущество такого подхода в том, что поиск можно производить с помощью логических побитовых операций. Из недостатков видится тот момент, что при большом количестве категорий размер этого бинарного поля будет некислым.
2.2) Поле типа ENUM/SET, в котором через запятую будут указаны числа, соответствующие номерам категорий. Из недостатков видится некоторая сложность работы с подобным типом поля.
А как народ в своих проектах реализует подобное?

