界面语言
如果界面显示的是英文板块可以选择在
config/app.php
文件中进行修改
找到'locale' => 'en'
将其修改成'locale' => 'zh-CN'
,如果有多语言需求开发 可以在
./resource/lang
中找到对应的语言去添加翻译
以下为中文翻译文件举例
[
'prev' => '上一步',
'next' => '下一步',
'quick_create' => '快速创建',
]
导出
在导出的时候如果遇到乱码了,找到./vendor/encore/laravel-admin/src/Grid/Exporters/CsvExporter.php
的getHeaders
方法
protected function getHeaders()
{
if (!$this->filename) {
$this->filename = $this->getTable();
}
// 添加下面这行print语句就可以解决问题了
print(chr(0xEF).chr(0xBB).chr(0xBF));
return [
'Content-Encoding' => 'UTF-8',
'Content-Type' => 'text/csv;charset=UTF-8',
'Content-Disposition' => "attachment;filename=\"{$this->filename}.csv\"",
];
}
以下是为昨天创建的资源控制器的具体落实
-
grid方法
- 添加字段
/**
* 成员列表总览页面
*
* @return Grid
*/
protected function grid()
{
$grid = new Grid(new Member());
// 方法1: 将需要展示字段通过column方法显示出来
$grid->column('id', 'Id');
$grid->column('nickname', '昵称');
$grid->column('truename', '姓名');
$grid->column('email', '邮箱');
// 方法2: 直接将字段名作为方法也可以显示出来, 由于可能会和Grid的方法冲突
// 此方法不建议使用
$grid->truename('姓名');
// 方法3: 通过columns方法将多个字段显示出来
// 有多个不为数组的参数时展示的表格标题为首字母大写的字段名
$grid->columns(['nickname' => '昵称', 'truename' => '姓名']);
$grid->columns('nickname', 'truename');
// 显示id列, 并且设置该字段为可排序字段
$grid->column('id', 'Id')->sortable();
return $grid;
}
-
detail方法
/**
* 显示成员的详细信息
*
* @param mixed $id
* @return Show
*/
protected function detail($id)
{
$show = new Show(Member::findOrFail($id));
$show->field('id', 'Id');
$show->field('nickname', '昵称');
$show->field('truename', '姓名');
$show->field('email','邮箱');
return $show;
}
-
from方法
/**
* 制作一个表单生成器, 用于表单提交, 如创建、修改等
*
* @return Form
*/
protected function form()
{
$form = new Form(new Member());
$form->display('id', 'Id');
// 添加一个只是可见的字段
$form->text('nickname', '昵称');
// 添加文本框
$form->text('truename', '姓名');
$form->text('email', '邮箱');
// 添加文本域
$form->textarea('info', '自我介绍');
// 还有其他的表单控件都可以直接以方法名的形式去使用
// 左上角的按钮控件如果不需要可以用以下方法去掉
$show->panel()->tools(function ($tools) {
// 去掉修改按钮
$tools->disableEdit();
// 去掉列表按钮
$tools->disableList();
// 去掉删除按钮
$tools->disableDelete();
});
return $form;
}