|
======================== ------------------- laravel-admin 专属-----------------------------
相关拓展资源: laravel-admin https://github.com/jxlwqq/awesom ... master/README-CN.md
laravel-admin 使用手册: https://laravel-admin.org/docs/zh/upgrading
easywechart 使用手册: https://www.easywechat.com/docs/master/overview
Laravel-admin 码的电子商务前后端系统 : https://learnku.com/articles/31997
laravel使用OSS https://github.com/jacobcyl/Aliyun-oss-storage
--------------制作逻辑-------------------------------------
不是先建页面,再写控制器,再写啥啥啥的,他这个 前后台 页面不分家
1. 如何搞个页面?
1.1 输入命令
php artisan admin:make UserController --model=App\Model\User
php artisan admin:make 表名Controller --model=App\Model\数据表模型名
1.2 写个路由
$router->resource('users', UserController::class);
1.3 把路由加入菜单 http://localhost:8000/admin/auth/menu 打开网址添加菜单,注意 地址写路由的地址
2. 关于如何新增 右侧 单条表格的 操作,例如 更新数据
2.1 新建一个控制器
E:\phpstudy\PHPTutorial\WWW\min\weixin>php artisan admin:action Post\UpWxUserInfo --grid-row --name="更新"
该控制器位于:App\Admin\Actions\Post;
2.2 把 控制器的操作 添加到行内
3. 修改左侧的 网站名称 图标
3.1 config/admin.php
'logo' => '<b>Laravel</b> admin ,
'logo-mini' => '<b>La</b>',
3.2 修改登录页的 大文字标题
'name' => '牧马科技网站管理后台',
4. 在laravel-admin 中使用阿里云 oss
参考官方上传文档上传篇云端上传:https://laravel-admin.org/docs/z ... F%E4%B8%8A%E4%BC%A0
我是这么干的:
4.1 点击下面的链接。跳转到官方推荐的地址:
https://github.com/jacobcyl/Aliyun-oss-storage
4.2 按照步骤 :
composer require jacobcyl/ali-oss-storage:^2.1
4.3 按照步骤写配置app/filesystems.php:
'disks'=>[
...
'oss' => [
'driver' => 'oss',
'access_id' => '<Your Aliyun OSS AccessKeyId>',
'access_key' => '<Your Aliyun OSS AccessKeySecret>',
'bucket' => '<OSS bucket name>',
'endpoint' => '<the endpoint of OSS, E.g: oss-cn-hangzhou.aliyuncs.com | custom domain, E.g:img.abc.com>', // OSS 外网节点或自定义外部域名
//'endpoint_internal' => '<internal endpoint [OSS内网节点] 如:oss-cn-shenzhen-internal.aliyuncs.com>', // v2.0.4 新增配置属性,如果为空,则默认使用 endpoint 配置(由于内网上传有点小问题未解决,请大家暂时不要使用内网节点上传,正在与阿里技术沟通中)
'cdnDomain' => '<CDN domain, cdn域名>', // 如果isCName为true, getUrl会判断cdnDomain是否设定来决定返回的url,如果cdnDomain未设置,则使用endpoint来生成url,否则使用cdn
'ssl' => <true|false> // true to use 'https://' and false to use 'http://'. default is false,
'isCName' => <true|false> // 是否使用自定义域名,true: 则Storage.url()会使用自定义的cdn或域名生成文件url, false: 则使用外部节点生成url
'debug' => <true|false>
],
...
]
4.4 按照步骤写配置app/filesystems.php:
'default' => 'oss',
4.5 标明在laravel-admin 中使用config/admin.php:
'upload' => [
'disk' => 'oss',
'directory' => [
'image' => 'image',
'file' => 'file',
],
],
完工,在修改时,其自带删除功能,让你欲罢不能 哈哈哈
5. show 显示的 时候 如何将图片显示出来 ,按照他的官方文档 我瞎几把猜了半天才出,注意 IdNumberImg 不是可用字段 ;
$show->field('id_number_img', __('身份证照片'))->id_number_img()->image();
加个尺寸:
$show->field('company_img', __('营业执照'))->id_number_img()->image($server = '', $width = 600, $height = 600);
---------------问题集锦------------------------------------
1. 一个form 表单的 radio 的 表单联动 > 是错误的,除了等于 其余基本都是错误的 但是
错误的写法:
$form->radio('nationality', '国籍')
->options([
1 => '本国',
2 => '外国',
3 => '啥过'
])->when('=', 1, function (Form $form) {
$form->text('name', '姓名');
$form->text('idcard', '身份证');
})->when('>', 1, function (Form $form) {
$form->text('name', '姓名');
$form->text('passport', '护照');
});
正确的写法:
$form->radio('type', '类型')
->options([
1 => '个人',
2 => '代理机构',
3=>'企业'
])
-> when(1, function (Form $form) {
$form->image('id_number_img', __('身份证照片'));
})->when( '>=', 2, function (Form $form) {
$form->text('company_name', __('公司名称'));
$form->text('company_organ', __('信用代码'));
$form->image('company_img', __('营业执照'));
})
// ->when( 3, function (Form $form) {
// $form->text('company_name', __('公司名称'));
// $form->text('company_organ', __('信用代码'));
// $form->image('company_img', __('营业执照'));
// })
;
2. 导出的excle文件会乱码 -.-
修改文件:vendor\encore\laravel-admin\src\Grid\Exporters\CsvExporter.php
在 getHeaders() 函数中 添加一行
// 这是我乱码时添加的一段代码 我真不知道干啥用的 但是管用
print(chr(0xEF).chr(0xBB).chr(0xBF));
|
|