首页 新闻 会员 周边

有关CMS设计问题

0
悬赏园豆:10 [已解决问题] 解决于 2016-07-26 12:49

心血来潮,想研究下CMS(小白一名),看了一些设计,我自己就想文章有些属性,比如首页头条啊,轮播显示啊等等的,如果我弄张属性表存放等等的属性,和文章表关联出另外一张文章属性表,这样设计可以吗?有什么好处和坏处啊??

cvxcrfa的主页 cvxcrfa | 初学一级 | 园豆:34
提问于:2015-05-30 21:07
< >
分享
最佳答案
1

可以的

好处:减少冗余节省空间

坏处:更复杂,维护难度相对较高,节省空间极其有限(是否头条,是否轮播显示类似字段使用布尔型,占用空间最多1字节甚至不到

提示:
1、使用关联表时注意外键和级联操作的维护

2、文章的这些属性颗粒已经很小了,想抽象的话可以向上研究,比如以文章为模板,实现具有不同属性的多样化文章,这个时候关联表就必须登场了……

收获园豆:10
某猿 | 菜鸟二级 |园豆:373 | 2015-05-30 22:12

感觉弊大于利啊,如果是你的话,你会选择如何操作,求解?

cvxcrfa | 园豆:34 (初学一级) | 2015-05-30 22:17

@cvxcrfa: 如果系统的文章样式单一(所有文章属性都一样)不会使用关联表,如果文章有好几种样式(A类、B类、C类……这些类型文章的属性不一样,这个时候会考虑使用关联表)

某猿 | 园豆:373 (菜鸟二级) | 2015-05-30 22:28

@cvxcrfa: 对于初学者, 如果在初七就有这种感觉, 是我的话, 我会跟着感觉走。

请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-05-30 22:29

@duomio: 哦哦,感谢!

cvxcrfa | 园豆:34 (初学一级) | 2015-05-30 22:31

@请叫我头头哥: 好的,谢谢意见!

cvxcrfa | 园豆:34 (初学一级) | 2015-05-30 22:35
其他回答(4)
0

CMS? 内容管理系统? 作为当下企业信息化建设和电子政务的新宠我觉得是这得研究的。  你说的研究是只是出于个人爱好学习, 还是商业目的?  如果只是冲着学习的目的去的。 那么, 就不要在之初就考虑这些,你会发现越走越美。

请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-05-30 21:22

就是个人试着想自己做一个,学习一下各种知识,看了一些数据库的设计,发现都没有这样的设计,为什么啊?

支持(0) 反对(0) cvxcrfa | 园豆:34 (初学一级) | 2015-05-30 21:25
0

这又不是结婚,你还是自己试试。

再说了,软件早期错的成本最低,等你十年后才发现大头告诉你的错了,你到哪儿找他去啊。

爱编程的大叔 | 园豆:30839 (高人七级) | 2015-05-30 23:13

我不会告诉他的, 我一直帮他隐藏着~   :)

支持(0) 反对(0) 请叫我头头哥 | 园豆:9382 (大侠五级) | 2015-05-31 15:09
0

        你这么做没什么问题。我以前看到过一个商业收费的CMS系统,有和你这个一样的设计。

他们有个挑选器表,里面可以定义一切挑选器,也是类似首页头条这些。然后有个挑选器内容表,存放各个挑选器选中的内容。

好处:十分灵活,内容想怎么选就怎么选。

      有些CMS可能就是在文章表里放一些字段,比如,是否推荐,是否置顶,点击率..等一些用于推荐到各个地方显示字段。

一旦需求发生变化,或者其他原因要换显示的规则,甚至基于表现有字段达不到你想要的显示效果。这时候可能需要改代码,或者数据库结构。

      这时你这样的设计,你只要把想要显示的文字,设置一个属性即可。

 

坏处:操作相对会繁琐一些。 比如:首页头条这块位置,只显示5条文章。然后你发布了一条新的文章,想要显示到首页头条,你把新文章设置了首页头条的属性,那么你或许要把一个首页头条里的新闻手动撤下来。

庸俗 | 园豆:190 (初学一级) | 2015-05-31 18:01
0

内容的置顶, 轮播, 头条等这些属性没必要再建一个专门的表,  你联表随你怎么优化都没有一张表去查效率高。 

如楼上所说。  顶多就是加这么几个字段, 为了解决比如像置顶头条过期(置顶多久时间),可以加再个有效时间。  这几个字段的设置规则自己要清楚就行了。 

问天何必 | 园豆:3311 (老鸟四级) | 2015-06-01 11:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册