-
Notifications
You must be signed in to change notification settings - Fork 4
Home
dengyongbin edited this page Dec 20, 2016
·
39 revisions
'model_class' => 'App\Models\Test',
'model_name' => '测试',
'index_column' => array('id', 'name', 'status'),
'index_column_name' => array('ID', '名称', '状态', '操作'),
'index_multi_join' => array(
['users', 'tests.user_id', '=', 'users.id'],
['roles', 'tests.role_id', '=', 'roles.id'],
),
'index_multi_column' => array('user_id', 'users.name as user_name', 'tests.name', 'roles.name as role_name'),
'index_column_rename' => array(
// 枚举映射
'name' => array(
'type' => 'selector',
'param' => 'test_selector'
),
// 不同值显示不同样式
'status' => array(
'type' => 'normal',
'param' => array(
0 => '<span class="label label-default">未启用</span>',
1 => '<span class="label label-success">已启用</span>',
)
),
// 模态框
'id' => array(
'type' => 'dialog',
'param' => array(
// a标签name名称
'name' => 'test_btn',
//模态框名称
'target' => 'test_dialog',
//模态框标题
'dialog_title' => 'Modal',
//模态框路由,结尾的'/'不能省略,url后会传递id值,路由需配置
'url' => '/admin/test/detail/',
'width' => '80%'
)
),
// html样式替换
'avatar' => array(
'type' => 'html',
// 图片样式(如果图片需要自定义样式则使用该方法,否则请用图片类型实现)
'param' => '<a href="%s" target="_blank"><img style="width:50px;height:50px" src="%s" alt=""></a>',
// 链接样式
//'param' => '<a href="%s" target="_blank" title="%s">点击查看</a>',
),
'title' => array(
'type' => 'limit',
'param' => '50'
),
// 单张图片处理
'image' => array('type' => 'image'),
// 多张图片处理
'images' => array('type' => 'images'),
),
'index_column_format' => array(
// 金额格式化,建议不使用,在Model中get时/100
array('column' => 3, 'type' => 'amount'),
// 日期格式化
array('column' => 8, 'type' => 'date', 'format' => 'Y-m-d H:i'),
// 自定义函数格式化字段值
array('column' => 5, 'type' => 'function', 'value' => function ($value) {
return strtotime($value) > time() ? $value : $value . '已结束';
}),
),
'sort' => array(['created_at', 'desc'], ['test_time', 'desc']),
// 需要显示排序的列就配置为true,不需要排序的列不用配置,默认没有排序列功能
'table_sort' => array(
'id' => true,
'created_at' => true,
),
'index_where' => array(
array('column' => 'news_type', 'operator' => '=', 'value' => 2),
array('column' => 'news_type', 'operator' => 'whereIn', 'value' => [1,2]),
array('column' => 'news_type', 'operator' => 'whereNotIn', 'value' => [1,2]),
array('column' => 'news_type', 'operator' => 'whereBetween', 'value' => [1,2]),
array('column' => 'news_type', 'operator' => 'whereNotBetween', 'value' => [1,2]),
array('column' => 'news_type', 'operator' => 'whereNull'),
array('column' => 'news_type', 'operator' => 'whereNotNull'),
),
'edit_column' => array('name', 'title', 'publish_time', 'test_time'),
'edit_column_name' => array('名称', '标题', '发布日期', '测试日期'),
'edit_column_detail' => array(
// 下拉控件[style:select|select2]
'name' => array(
'type' => 'selector',
'selector_key' => 'test_selector',
'style' => 'select',
'validator' => array('required' => true)
),
// 默认input输入框
'title' => array('validator' => array('required' => true)),
// 日期控件
'publish_time' => array(
'type' => 'date',
'default_value' => 'now',
'date_picker' => array(
'dateFormat' => 'yy-mm-dd',
'yearRange' => '-10:+10',
'minDate' => '-2',
'maxDate' => '+2',
),
'validator' => array('required' => true)
),
// 时间控件
'test_time' => array(
'type' => 'time',
'validator' => array('required' => true)),
),
// 编辑器控件(编辑器额外需要引入模板,在外层配置:'edit_editor' => true,编辑器控件才生效)
// toolbars自定义工具参考:[http://fex.baidu.com/ueditor/#start-toolbar]
'summary' => array(
'type' => 'editor'
'language' => true,
'toolbars' => ['fullscreen', 'source', 'undo', 'redo', 'bold']
),
// 图片控件
'image' => array(
'type' => 'image',
'name' => 'image',
'min_count' => 1,
'max_count' => 1,
'min_error_msg' => '至少上传%s张图片',
'max_error_msg' => '最多只允许上传%s张图片',
'editable' => true
),
// 多语言
'name' => array(
'type' => 'language',
),
// 多标签控件(字段接受用逗号拼接的字符串)
'name' => array(
'type' => 'tagsinput',
'style' => 'tags'
),
// 多选控件
'name' => array(
'type' => 'checkbox',
'value' => ['1' => 'a', '2' => 'b', '3' => 'c'],
),
),
'edit_hidden' => array(
array('name' => 'news_type', 'value' => 2),
array('name' => 'language_hidden', 'value' => 'name,title'),
),
'edit_hidden_business_id' => array(
'name' => 'store_id',
),
'edit_redirect_location' => '/admin/store/{id}/edit',
'edit_redirect_location' => '/admin/store/edit',
'detail_column' => ['id', 'name', 'title', 'status', 'created_at'],
'detail_column_name' => array('ID', '名称', '标题', '状态', '创建时间'),
'detail_multi_join' => array(
['users', 'users.id', '=', 'feedbacks.account_id'],
),
'detail_multi_column' => array(
'users.email as email', 'feedbacks.*'
),
'detail_column_rename' => array(
// 金额
'amount' => ['type' => 'amount'],
// 图片
'image' => ['type' => 'image'],
// 重命名
'status' => [
'type' => 'normal',
'param' => [
'0' => '<span class="label-default status">未上线</span>',
'1' => '<span class="label-success status">已上线</span>'
]
],
// 下拉枚举
'type' => [
'type' => 'selector',
'param' => 'test_type'
],
// 日期
'created_at' => [
'type' => 'date',
'format' => 'Y-m-d H:i'
],
// html
'title' => [
'type' => 'html'
],
// 多语言
'name' => [
'type' => 'language'
],
),
'curd_action' => array(
'create' => false,
'edit' => false,
'detail' => false,
'delete' => false,
),
// 禁用权限检查
'disable_permission' => true,
'table_action' => array(
// 状态变更
array(
'type' => 'confirm',
'name' => 'enabled_btn',
'display_name' => '启用',
'permission' => 'admin.test.changeStatus.enabled',
'url' => '/admin/test/changeStatus',
'data' => array('status' => 1, 'publish_time' => 'now', 'admin_id' => 'admin_id'),
'where' => array('status' => [0, 1]),
),
// 操作自定义
array(
'type' => 'redirect_with_id',
'name' => 'add_topic',
'display_name' => '添加话题',
'method' => 'get',
'url' => '/admin/account/addTopic'
),
// 带自定义参数的配置,外部需配置额外2个属性
'table_action' => array(
array(
'type' => 'redirect_with_id',
'name' => 'city_index',
'display_name' => '市区域管理',
'method' => 'get',
'url' => '/admin/area/{custom_id}/city'
),
),
// 模态框
array(
'type' => 'dialog',
'name' => 'edit_permission',
'target' => 'edit_permission',
'dialog_title' => '分配权限',
'display_name' => '分配权限',
'url' => '/admin/roles/permissions/',
'form' => array(
'form_id' => 'smart-form-permissions',
'submit_id' => 'confirmPermission',
'success_msg' => '分配权限成功,重新登陆后即可更新左侧菜单栏',
'failure_msg' => '分配失败'
),
),
),
'custom_id_relation_column' => 'parent_id',
'custom_id_back_url' => '/admin/area',