我正在新闻网站上工作,我正在考虑实施一个标记系统(类似于这个网站),您可以根据不同的类别对新闻进行分类,例如:newscategory(经济,政治等) 。)还有诸如它所写的语言和新闻文章的类型(社论,专题报道等)。
我应该如何区分这些不同的类别?我应该为每个类别类型都有一个标签表,还是应该将所有内容保存在一个表中并使用标签前缀,例如“language:en”,“category:economy”?第二个解决方案似乎更灵活,因为我可以通过附加前缀添加更多的护理类型。然而,第一个解决方案感觉更有条理,更容易使用。
另外,我想知道你如何确定何时应该将某些东西表示为标签,或者什么时候它应该是数据库中的列值/记录(例如,该语言应该是标签还是我的“新闻”中有语言列?表?)。我不确定在哪里划线。
由于
答案 0 :(得分:1)
是否可以说标签本身可以在层次结构中排序?如果是这样,只需在parent_tag_id
表中添加tags
。
id name parent_tag_id
-------------------------------
1 language null
2 english 1
3 french 1
4 newscategory null
5 economy 4
6 politics 4
您可能会将列视为静态字段,将行视为动态。保持列数低。语言可能是表中所有字段的列,应该与语言相关联。