菜单配置

菜单有两种,一种是前台页面(比如用户不需要登录,既可以查看的页面),一种是后台管理页面(生成后台管理目录树)。但是后台和前台的菜单也是通用的。

前台页面的URL格式如下:

/<model_name>.html
/<model_name>/dd-1/cc-gg.html

model_name 是数字和字母、下划线的组合,不能包含 -。 其中dd =1 ,cc = gg 是传参方式。为了URL美观,不建议使用 ?aa=1&cc=gg 传参方式.

后台的URL格式如下:

# 自定义页面的配置,模板调用前端模板进行渲染
/<model_name>/page.html

# 自定义页面的配置,single指的是不带菜单的后台页面
# 这种模式渲染的页面和/<model_name>.html渲染结果一样
/<model_name>/page/single.html

# 列表模式:展示列表信息
/<model_name>/list.html

# 详细模式:展示单条数据,如果id不是空的,则为编辑模式,否则是新增模式
/<model_name>/info.html

# 详细模式:数据编辑模式
/<model_name>/info/data-8.html

# 搜索模式,数据展示结果只能查看,没有其他菜单
/<model_name>/search.html

# 单条数据编辑模式 一般用于内嵌到其他应用中,例如弹出框中的编辑菜单
/<model_name>/info/single/data-9.html

# 正则匹配URL为
^/[\w]+/(list|info|search|page|tree)(/single)?(/[\w]+-[\w]+)*.html$

注意:由于历史问题,在URL传递主键的时候,统一使用data-xx进行传递,不可使用id进行传值,避免带来一系列的麻烦。

# 前端 
/news/data-1.html  

# 后端 
/manage/info/data-1.html

# 后端单独页面 
/manage/info/single/data-1.html

以上关键词 singlelist info search page 可以随意搭配,不固定以上几种。

以上介绍了Hardmall的URL匹配模式,下面是对菜单表的详细字段介绍:

英文名称中文名称值域说明
idID主键
cname网页的中文名称前端渲染使用
enamemodel_name主要用于权限判断和数据合成
turn_code顺序号后台渲染菜单的先后顺序
menu_type暂无意义
url后台渲染必填用于生成目录树
vue_tree_form暂无意义
tplname模板名称为空后默认使用 <ename>.html模板
father_id父级菜单ID后台管理页面,一级目录设置为1,其他子目录设置为根目录的ID
icon后台管理菜单的图标只有一级菜单图标设置管用,图标使用饿了么的图标表示
role_list角色ID,多个用,隔开网页权限访问控制,对于用户表来说,每个用户都有一个唯一的角色ID,如果列表里面还有用户角色ID,则有权限访问。对于前端页面来说,为空表示所有人可以访问,对于后端页面来说,为空表示没有访问权限。所以后端需要明确规定角色的权限。
vue_button_list列表页数据操作菜单分为弹框菜单和href跳转菜。 弹框菜单示例:dialog:编辑:edit_url;跳转菜单示例:编辑:edit_url。其中编辑是显示在前台的菜单名称, edit_url指的是数据列中的字段值。如果接口中返回的字段为空,那么按钮就是灰色的,禁止点击。
save_post_log是否自动保存提交的表单数据一般用来保存 前端通过 post-form提交的数据,保存在save_post_log表中,格式为json
vue_form_idtable_info表中的主键用来配置后台管理页面的显示字段、编辑字段等。前台页面可以不配置。