1. 伪静态配置:
location / {
index index.html index.htm index.php;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
#autoindex on;
}
2. 关联模型时关联字段不显示:
//情况1:数据库字段不包含两条_,例如:user_id,可能因为生成js,渲染后缺少指定的显示字段,
//方法:修改view在input标签上添加data-field="需要显示的关联字段"
//情况2:数据库字段包含两条或以上的_,例如:user_rule_id,JS或生成user/rule/id形式,所以找不到这个控制器
//方法:修改view中的input标签上的data-soure="user/rule/id"为"user_rule_id"
3. 给后台信息列表添加自定义按钮:
//1.找到/public/assets/js/backend/你的页面.js文件
//2.找到{field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
改成:{
field: 'operate', title: __('Operate'), table: table,
buttons: [
{name: 'detail', text: '详情', title: '详情', icon: 'fa fa-list', classname: 'btn btn-xs btn-primary btn-dialog', url: 'page/detail'}
],
events: Table.api.events.operate, formatter: Table.api.formatter.operate
}
//3.绑定按钮点击方法
detail:function(){
Controller.api.bindevent();
},
//4.控制器添加方法直接用$ids获取当前ID
3.1 table几个配置的含义
name | 唯一标识,其中index/add/edit/del/multi/dragsort这几个框架已经暂用,如果使用将会覆盖已有属性 |
---|---|
text | 按钮上的文本,可以为空时,为空时按钮将不显示文字信息,为空时最好配置上icon的值 |
title | 按钮的标题信息,当鼠标移到上面时显示的文字,同时作为dialog弹出窗时的标题信息 |
icon | 按钮上的按钮信息,可使用Font-awesome的按钮,当text为空时请务必填写该值 |
classname | 按钮的class标签的值,建议btn btn-xs为必选,这样可以和其它按钮更加协调搭配,可搭配用的按钮颜色有btn-primary、btn-success、btn-danger、btn-warning,还有额外的功能class如btn-dialog、btn-addtabs、btn-ajax,下面会详细介绍。 btn-dialog : 点击按钮后将会以弹窗的形式打开url这个链接 btn-addtabs : 点击按钮后将会在顶部选项卡中新增一个选项卡并跳转 btn-ajax : 点击按钮后将会发起一个Ajax请求 |
url | 按钮点击后跳转的链接,可选且可使用相对链接。为空时按钮的链接为javascript:; |
dropdown | 按钮分组名称,用于将按钮分组下拉 |
refresh | 是否在执行完事件后刷新列表,常配合classname:’btn-ajax’使用 |
confirm | 提示确认信息,常配合classname属性为btn-ajax、btn-dialog、btn-addtabs使用 |
extend | 扩展属性,用于扩展按钮的自定义属性 |
hidden | 控制按钮是否隐藏属性,支持function |
visible | 控制按钮是否显示属性,支持function |
disable | 控制按钮是否禁用属性,支持function |
3.2 根据权限控制按钮显示
例如添加一个详情按钮detail 可添加data-operate-detail属性,如下
<table id="table" class="table table-striped table-bordered table-hover"
data-operate-edit="{:$auth->check('page/edit')}"
data-operate-del="{:$auth->check('page/del')}"
data-operate-detail="{:$auth->check('page/detail')}" width="100%"> </table>
其中data-operate-detail这里的detail对应的就是我们按钮中的name值,而{:$auth->check(‘page/detail’)}中的page/detail对应的就是我们方法的控制器和方法。
只需要上面这一行代码,如果管理员没有page/detail这个权限,则detail这个按钮就不会显示了。
如果需要隐藏默认的编辑或删除按钮,可以将相应的值置为空即可,如下:
<table id="table" class="table table-striped table-bordered table-hover"
data-operate-edit=""
data-operate-del=""
width="100%"> </table>
4.添加一个新显示字段
1.找到模块->控制器,方法里添加显示字段
2.找到模块->lang->zh-cn->文件,添加字段中文
3.找到/public/assets/js/backend/你的页面.js文件,添加显示字段