问题描述
问题是这样的,要实现的是一个网站管理系统,基础表baseArticle,字段设计包含网站所有页面欲展现内容的基础数据,idnvarchar(50)ID(主键)titlenvarchar(100)标题keywordsnvarchar(100)关键词descriptionnvarchar(300)摘要weightint排序权重litpicnvarchar(100)缩略图特殊数据表,例如基本文档,docContent,idnvarchar(50)ID(主键)articIdnvarchar(100)标题contenttext关键词其它的诸如产品表,企业资料等,都会与baseArticle表一起构成某个页面的完整信息。现在要求用户可以根据自己的需要,在后台自己创建特殊数据表,并在后台以栏目的形式管理内容麻烦高手帮我想个思路怎么做好,拜谢!!
解决方案
本帖最后由 eyesinfog 于 2014-08-30 16:01:35 编辑
解决方案二:
不知道你所谓的“思路”倾向于那种路数,我只能给你一些理论上的肤浅分析:许多人都会自己开发一个类似SQLServerManagementStudio的工具,让用户自己去创建数据表、字段,编辑录入数据,然后它自动给各个数据表产生一个统一的“增上改查业务界面”,并且自动根据数据表中的某些表而产生应用程序菜单。这是比较低级的“基于关系数据库概念”的交互界面设计。比如说,你可以在一个“树型菜单”上让用户可以加入相应的栏目,然后右边就出现了跟关系数据“创建表”一模一样的界面,让用户录入各个字段,甚至包括主键和外键。只要一“切换”,用户可以编辑这个栏目(其实是这个数据表)里的记录内容。再一切换,用户可以使用鼠标拖拉地画出这个栏目的“模板”,这就相当于使用vs进行asp.net的ascx设计窗口操作一样。记得许多年前,我们招聘的那些大学毕业生中,许多人都会开发前面一半的操作,也就是编写一个“由用户自己去创建数据库表,然后自动给数据库表绑定一种增删改查界面”的程序的。事实上,我说“这是比较低级的交互界面设计”,是因为这种东西其实也还是脱离了“内容管理系统”的用户需求,纯粹是从照抄关系数据库的客户端工具的UI设计出发的,而不是从用户的角度来设计的。我觉得苦于没有好的设计师,不懂编程但是懂用户的设计师,来设计产品。我看你的帖子,我猜你也不可能有这各层面的想法。
解决方案三:
我说的前一个方面的“思路”,我想任何一个做产品开发(而不是拿项目去应付客户)的公司都会有这方面的思路。除非这个公司只有一些没有多少经验的学生,否则一定会去设计自己的工具平台。当然你可能会觉得这种东西做起来很有风险,希望找个现成的。但是其实如果等到有人很低廉的嫁给给你一个现成的,那么人家早就把市场价格从10万降到1000块了。对于有创意的程序设计师,这种东西做起来毫无风险,技术上非常成熟,关键是看你公司的老板是宁愿折腾所有资源做项目,还是愿意真正配套必要的资源做产品。
解决方案四:
你只要搞清楚如何创建表,字段,基本就能解决你的问题了,就是对表和字段的动态管理
解决方案五:
用不着,建一个表,使用一些通用字段就可以了。
解决方案六:
谢谢各位的回答,可能没能表述得很清楚,其实我想实现的是,在后台用户创建栏目的时候,他可以选择系统里已存在的数据模型,也可以自己创建,例如,创建“优惠活动” 这个栏目;那他可以选择基本文档模型,数据保存在baseArticle和docContent中,再来,如果创建“顾问专家”这个栏目,它包含的字段如,专家职称,现任职位,擅长项目,荣誉,生活照,工作照等等那么可以在后台新创建一个内容模型,再创建栏目,选择这个人物模型,其实这么想的出发点,是想到如果以后有这种小小结构上不一样的东西,可以不去改代码,不去重新编译,做一种统一的模型管理工具出来;tosp1234:您说得很到位,也很深邃,一看就是资深的技术流了;有可能是我把问题想得太简单,有点异想天开了。