Oop 如何为博客系统设计未分类帖子

Oop 如何为博客系统设计未分类帖子,oop,database-design,url-routing,blogs,ooad,Oop,Database Design,Url Routing,Blogs,Ooad,我有三张桌子: 发布 类别 后分类(多对多关系表) 当用户为帖子选择一个或多个类别时,它可以正常工作。但有一种情况是,当用户没有选择任何类别时,我应该如何管理这些未分类的帖子 我想了两种方法,我不知道哪种更好 1。不应将未分类的邮件插入[邮政分类]。 问题: a) 在URL路径中,我使用“/Post/Category/Travel”来显示分类文章。现在用户想要列出所有未分类的帖子,我只能使用类似“/Post/Category/Uncategorized”的内容。这将导致许多代码更改,以便将“未分

我有三张桌子:

发布

类别

后分类(多对多关系表)

当用户为帖子选择一个或多个类别时,它可以正常工作。但有一种情况是,当用户没有选择任何类别时,我应该如何管理这些未分类的帖子

我想了两种方法,我不知道哪种更好

1。不应将未分类的邮件插入[邮政分类]。

问题:

a) 在URL路径中,我使用“/Post/Category/Travel”来显示分类文章。现在用户想要列出所有未分类的帖子,我只能使用类似“/Post/Category/Uncategorized”的内容。这将导致许多代码更改,以便将“未分类”字符串与正常URL路由值区分开来

b) 当用户自己向系统中添加一个名为“未分类”的类别时,这将是一种混乱。(也许我可以定义一些系统保留字,但我觉得这不好。)

2。将常量值(未分类)添加到[Category],也作为系统保留字。如果用户未选择任何类别,请将帖子插入PostCategory(postId,UnCategorizeId)。

问题:

它将“未分类”视为一个类别,它对计算机意味着一个普通类别,只有人类知道这是一个特殊类别。这在面向对象的设计中是不好的

很难决定哪一个更好,有没有其他方法来管理“未分类”的帖子?

解决方案(2)将允许单个帖子同时进行分类和未分类。因此,从数据一致性的角度来看,(1)是一个更好的解决方案


我真的无法评论代码更改的复杂性,但作为一项一般性指导原则,在选择更干净的代码和更干净的数据时,更喜欢更干净的数据。

然后为了数据一致性,对标记进行索引的好处,并且为了保持您自己的理智,必须对每个条目进行标记/分类。除非受到您的设计或其他一些约束,否则这不是一个选项。以这个网站为例。StackOverflow不允许您在这里发布没有标签的问题。您将(至少)从标记内容和索引这些标记中获得性能优势

创建
Uncategorized
category&当用户发布一个没有类别的博客时,用
Uncategorized
tag自动标记它。如果post已经有一个标记&
Uncategorized
tag,则从中剥离
Uncategorized
tag。这不管用吗?