j'avais un système de marquage assez commun mis en place:moyen le plus rapide pour trier le « marquage » DB
table|'keyword'| : tag_id | tag
table|'tag_thread'|: tag_thread_id | tag_id | thread_id
table|'thread'| : thread_id | thread_info
Cependant, je l'ai depuis changé la façon dont mon marquage sera affiché. La nouvelle idée est d'avoir une colonne related
dans le keyword_tbl
. J'ai décidé d'essayer cette route parce que je voulais faire un fil d'Ariane, et je voudrais commander les tags, par exemple, Sports -> Baseball -> Pichets. Aussi, s'ils tapent "baseball" je voudrais inclure Sports dans le cadre des tags sans qu'ils s'en inquiètent.
keyword_tbl : keyword_id | keyword | related_id
Par exemple:
keyword_tbl:
keyword_id // 1 // 2 // 3
keyword // sports // baseball // pitchers
related // 0 // 1 // 2
0
marque le fait qu'il est une étiquette 'générale', étant le plus large terme. Cela signifie que pour chaque thread qu'ils publient, je n'aurais besoin de stocker qu'une seule valeur (la plus détaillée, ou "lanceur" dans l'exemple ci-dessus). En commençant par "Pitcher" je pourrais dériver les champs liés, et créer la chapelure d'une manière en arrière.
Ma question est la suivante: Quelle route serait la meilleure pour ce que j'essaie de faire avec la chapelure? Y at-il quelque chose qui ne va pas dans la façon dont je prévois de le faire que quelqu'un puisse voir?
Merci
[regardez ici regarde même poste que le vôtre] (http://stackoverflow.com/questions/7221196/correct-way-to-set-up-mysql-database-for-related-tag-searches). –