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文件,添加显示字段
