# Laravel-admin 速查表
**Repository Path**: MrMarko/laravel_admin_quick
## Basic Information
- **Project Name**: Laravel-admin 速查表
- **Description**: Laravel-admin 速查表
- **Primary Language**: PHP
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2020-06-29
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
Laravel-admin速查表
### 列表
> 使用图标展示 ,默认`success`,可选 danger、warning、info、primary、default、success
```
$grid->column('status', __('状态'))->label(['1' => 'success','2' => 'warning' ])
```
> 根据内容显示不同的值
```
$grid->column('status', __('状态'))->display(function($status) { return $status == 1 ? '正常' : '异常'; })
$grid->column('status', __('状态'))->replace(['1' => '正常', '2' => '异常'])
$grid->column('gender')->using(['f' => '女', 'm' => '男']);
```
> 根据邮箱显示全球通用头像(中国不常使用)
```
$grid->column('email', '头像')->gravatar();
```
> 二维码
```
$grid->column('link')->qrcode();
```
> 图片显示
```
$grid->column('cover',__('封面图'))->image('路径', '100px', '100px')
// 点击图片可以放大看 cover为字段名(需另外安装扩展)
$grid->cover('封面图')->lightbox(['width' => 50, 'height' => 50]);
```
```
安装方法
composer require laravel-admin-ext/grid-lightbox
php artisan vendor:publish --tag=laravel-admin-grid-lightbox
打开config/admin.php,将属于此扩展的配置添加到extensions部分。
'extensions' => [
'grid-lightbox' => [
'enable' => true,
]
]
```
> 下载
```
$grid->column('file_path')->downloadable();
```
> 日期格式化
```
$grid->column('created_at')->date('Y-m-d');
```
> bool格式化
```
$grid->column('approved')->bool(['Y' => true, 'N' => false]);
```
> 筛选框
```
$grid->filter(function($filter){
// 去掉默认的id过滤器
$filter->disableIdFilter();
// 使用栅格化1/3摆放筛选框
$filter->column(1/3, function ($filter) {
$filter->like('uuid', 'UUID');
});
// 使用栅格化1/3摆放筛选框
$filter->column(1/3, function ($filter) {
$filter->like('name', '用户名');
});
// 默认展开筛选框
$filter->expand();
});
```
> 展开操作的几种方式
```
【全局设置】 在config/admin.php中配置
// 最原始的`按钮图标`形式
'grid_action_class' => \Encore\Admin\Grid\Displayers\Actions::class,
// 使用`下拉菜单`形式
'grid_action_class' => \Encore\Admin\Grid\Displayers\DropdownActions::class,
// 使用`右键菜单`形式
'grid_action_class' => \Encore\Admin\Grid\Displayers\ContextMenuActions::class,
【独立设置-给每一个表格指定不同的形式】
use Encore\Admin\Grid\Displayers\Actions;
use Encore\Admin\Grid\Displayers\DropdownActions;
use Encore\Admin\Grid\Displayers\ContextMenuActions;
// 最原始的`按钮图标`形式
$grid->setActionClass(Actions::class);
// 使用`下拉菜单`形式
$grid->setActionClass(DropdownActions::class);
// 使用`右键菜单`形式
$grid->setActionClass(ContextMenuActions::class);
```



> 列表禁用器
```php
// 禁用创建
$grid->disableCreateButton();
// 禁用查询过滤器
$grid->disableFilter();
// 禁用操作
$grid->disableActions();
// 禁用导出数据按钮
$grid->disableExport();
// 禁用行选择checkbox
$grid->disableRowSelector();
// 禁用分页条
$grid->disablePagination();
```
### 表单
> number框限制大小值
```
$form->number('inventory', __('库存数量'))->max(0);
$form->number('sell', __('销售数量'))->min(0);
```
> 修改text的icon(图标demo地址:http://itsjavi.com/fontawesome-iconpicker/)
```
$form->text('desc', __('描述'))->icon(‘far fa-edit’);
```
> 开关
```
$form->switch('status', __('状态'))->states([
'on' => [
'value' => 1,
'text' => '启用',
'color' => 'success',
],
'off' => [
'value' => 2,
'text' => '禁用',
'color' => 'danger',
]
]);
```
> 金额 symbol为设置单位符号
```
$form->currency('price', __('价格'))->symbol('¥');
```
> 字段必填
```
$form->currency('price', __('价格'))->required();
```
> 数字输入
```
$form->number('inventory', __('库存数量'))->min(0);
```
> 富文本编辑器(需安装扩展) 这是wang编辑器 比较简洁 我比较喜欢这款 其他的可以看官方文档
```
composer require jxlwqq/wang-editor2
php artisan vendor:publish --tag=laravel-admin-wang-editor2
在config/admin.php文件的extensions,加上属于这个扩展的一些配置
'extensions' => [
'wang-editor2' => [
// 如果要关掉这个扩展,设置为false
'enable' => true,
// 编辑器的配置
'config' => [
'uploadImgFileName' => 'upload',
'uploadImgUrl' => '/admin/upload',
'menus' => [
'source',
'|',
'bold',
'underline',
'italic',
'strikethrough',
'eraser',
'forecolor',
'bgcolor',
'|',
'quote',
'fontfamily',
'fontsize',
'head',
'unorderlist',
'orderlist',
'alignleft',
'aligncenter',
'alignright',
'|',
'link',
'unlink',
'table',
'|',
'img',
'video',
'insertcode',
'|',
'undo',
'redo',
'fullscreen'
],
]
]
]
// 调用方式 content=字段名
$form->editor('content');
```
> 图片上传框
```
单图上传
$form->image('cover', __('封面图'));
多图上传 removable()是用于删除单张图片的
$form->multipleImage('images', __('图库'))->removable();
```
> 表单初始化
```
Form::init(function (Form $form) {
// 去掉提交按钮
$form->disableSubmit();
// 忽略掉不需要保存的字段
$form->ignore(['column1', 'column2', 'column3']);
// 设置高度
$form->setWidth(10, 2);
// 设置表单提交的action
$form->setAction('admin/users');
// 判断当前表单页是创建页面还是更新页面
$form->isCreating();
$form->isUpdating();
// 提交确认
$form->confirm('确定更新吗?', 'update');
$form->confirm('确定创建吗?', 'create');
$form->confirm('确定提交吗?');
// 表单脚部
$form->footer(function ($footer) {
// 去掉`重置`按钮
$footer->disableReset();
// 去掉`提交`按钮
$footer->disableSubmit();
// 去掉`查看`checkbox
$footer->disableViewCheck();
// 去掉`继续编辑`checkbox
$footer->disableEditingCheck();
// 去掉`继续创建`checkbox
$footer->disableCreatingCheck();
});
// 自定义工具
$form->tools(function (Form\Tools $tools) {
// 去掉`列表`按钮
$tools->disableList();
// 去掉`删除`按钮
$tools->disableDelete();
// 去掉`查看`按钮
$tools->disableView();
// 添加一个按钮, 参数可以是字符串, 或者实现了Renderable或Htmlable接口的对象实例
$tools->add(' delete');
});
});
```
> 页面提示
```
// 页面头部显示内容
admin_success(‘保存成功');
// 页面右上角显示内容 3秒后消失
admin_toastr('创建成功');
```
> 回调方法
```
// 在表单提交前调用
$form->submitted(function (Form $form) {
//...
});
//保存前回调
$form->saving(function (Form $form) {
//...
});
//保存后回调
$form->saved(function (Form $form) {
//...
});
// 可以从回调参数$form中获取当前提交的表单数据 需要注意的是 不能直接用empty去判断对象里的值,因为会为空,可以赋值给一个变量 判断变量是否为空
$form->saving(function (Form $form) {
dump($form->username);
});
$form->text('name');
$form->hidden('slug');
// 表单赋值
$form->saving(function (Form $form) {
$form->slug = $form->name;
});
// 取模型中的值
$form->saved(function (Form $form) {
$form->model()->id;
});
```
## 系统配置 config/admin.php
> 默认打开左边的导航栏
```
'layout' => [
'sidebar-mini',
// 'sidebar-collapse'
],
```