排序我有一个相当普遍的标签系统设置:最快的方式通过“标记” DB
table|'keyword'| : tag_id | tag
table|'tag_thread'|: tag_thread_id | tag_id | thread_id
table|'thread'| : thread_id | thread_info
但是,因为我已经改变了我的标签将被显示的方式。
我的新想法是在keyword_tbl
中有一个related
列。我决定尝试这条路线,因为我想做一个面包屑系统,并且想'订购'标签,例如运动 - >棒球 - >投手。另外,如果他们输入“棒球”,我希望将体育作为标签的一部分,而不用担心它。
keyword_tbl : keyword_id | keyword | related_id
例如:
keyword_tbl:
keyword_id // 1 // 2 // 3
keyword // sports // baseball // pitchers
related // 0 // 1 // 2
0
标志着事实,这是一个 '通用' 的标签,是最广泛的术语。这意味着对于他们发布的每个线程,我只需要存储一个值(最详细的,或上面例子中的“投手”)。从“投手”开始,我可以派生出相关的领域,并以倒退的方式创建面包屑。
我的问题是这样的:我想用面包屑做什么更好的路线?我的计划是否有人可以看到的方式有什么特别的错误?
谢谢
[看这里看起来和你的一样] [(http://stackoverflow.com/questions/7221196/correct-way-to-set-up-mysql-database-for-related-tag-searches))。 –