У меня есть приложение, и я хочу, чтобы пользователи могли добавлять теги к статьям (похожие на теги переполнения стека), но я хочу, чтобы они были динамическими. Пока у меня это как строки JSON (не слишком сильно извиняюсь), но это имеет большой недостаток. Во-первых, я покажу вам пример, а затем объясню свою проблему.Как реализовать теги в базе данных?
Скажем, у меня есть статья, и это на пчелах, поэтому пользователи отмечают: пчелы, насекомые, мед, на открытом воздухе.
Тогда в моей статье класс (рамочный объект) У меня есть
string AssosciatedTags { get; set; }
который проведет: "[\"bees\", \"insect\",\"honey\"]"
тогда, когда я сделать статью я просто в JavaScript:
JSON.parse(model.AssosciatedTags);
и делать все, что я хочу ... добавлять/удалять теги с легкостью. Хорошо, вот и вот, где я действительно не думал достаточно, и теперь я все еще довольно смущен. Как я могу реализовать механизм сортировки? Скажем, мои пользователи с ума сошли. Они любят пчел. Их милые маленькие черные и желтые полосы. Поэтому они хотят, чтобы теги кликов интересовались, и мой сервер возвращает статьи, у которых есть теги, ассоциированные с ними.
Но как? Если у меня много статей, кажется, что плохая идея анализировать все теги из JSON в массив, искать этот тег и возвращать эти статьи.
Мое другое соображение заключается в простом поиске «, tagName», которое довольно грязно.
Есть ли стандартный способ или тот, который, мы надеемся, будет более оптимальным.
Возможный дубликат [Рекомендуемый дизайн базы данных SQL для тегов или тегов] (http://stackoverflow.com/questions/20856/recommended-sql-database-design-for-tags-or-tagging) –
Исправить. Благодаря! – user2330270