只有两张表,一对多的关系,一个菜单对应多个属性这里的属性前端需要的属性值,通过上级菜单的ID来关联上级的菜单表。例如:当前的菜单ID为”2000“,它的上级ID菜单的ID为”1000“,那么上级ID则填写"1000",当查询的时候直接就可以通过上级ID查询出所有关联的子ID.
补充一点
这里如果没有其他的可以对菜单进行排序的字段,可能会需要一个index字段作为菜单的下标,用于菜单显示的高低顺序,防止菜单的排列混乱。
想了想还是把权限加了上去,非常基础
关于菜单设计的题外话
如果这个后台系统用户访问量比较大建议将所有的菜单放入Redis,因为菜单数据量小,一般不会修改但是每次登录都会进行菜单的读取的特性是可以将菜单放入缓存的,这样在大访问量的情况可以降低数据库的压力。