现在做的这个项目是接着原来的项目继续修缮的,整个网站的结构已经定下来了,所以一直是在原来的基础上做些修改,总觉得有些地方改起来不是特别顺手,特别是用户信息同步问题。
网站采用普通注册用户和后台管理员用户分表存储的方式,不知道当初设计者是出于什么样的考虑作出这个决定,我觉得这样设计的好处是实现了前后台注册用户的分离,防止了前台站点注册用户登录后台的可能性,但是带来的问题是网站的后台用户登录前台是不是要重新注册,注册后作为两个帐户处理,如果是将后台的用户信息复制一份放在前台用户表里,往往又涉及到在多个添加用户的地方能否都能可靠的同步的问题,因为一个网站项目可能有多个添加用户的入口,可能由多个人开发,团队成员流动较快,不能保证沟通的有效。
我觉得避免这样的问题还是应该将用户信息放在一张表里面,并用一个标记区分前台用户和后台管理员用户,比如增加一个mark字段,0表示前台注册用户,如果要允许其访问后台,可以将mark字段改为1;后台添加管理员就直接将用户的mark设为1. 对于有比较复杂权限的设计来说,可以用0,1,2,3...9等等数字来表示用户具备的相应权限等级,继而对其进行访问控制。
当然这样设计是不是还有其他弊端,后续还要再具体分析的。