First
学习 L02课程,Laravel Administrator管理后台问题实在太多,改用laravel-admin作为管理后台。使用感受:laravel-admin真是超级容易上手,快捷简单易用。 下文用例主机域名使用
http://larabbs.test
,实际使用需替换成你自己的主机域名。
安装
- 下载扩展包
composer require encore/laravel-admin
- 发布资源
php artisan vendor:publish --provider="Encore\Admin\AdminServiceProvider"
该命令生成 config/admin.php
,可以修改里面的配置(建议使用默认配置不修改)。
3. 完成安装
php artisan admin:install
安装过程中,会自动执行数据库迁移,生成管理后台所需的数据表。安装完成后,在浏览器打开:http://larabbs.test/admin/
,使用用户名 admin 和密码 admin登录。
生成控制器
使用下面命令生成模型对应的控制器,这里为 App\Models\User
生成控制器(若在windows系统下操作,\\
改为 \
)。
php artisan admin:make UserController --model=App\\Models\\User
上面的命令会创建路由器文件 app/Admin/Controllers/UserController.php
。
添加路由配置
在路由配置文件 app/Admin/routes.php
中添加如下代码:
.
.
.
function (Router $router) {
$router->get('/', 'HomeController@index');
$router->resource('users', UserController::class); //新添加的
});
.
.
.
添加左侧菜单栏链接
浏览器打开 http://larabbs.test/admin/auth/menu
,在新增一栏填写如下信息:
访问地址 http://larabbs.test/admin/users
,即可看到默认样式的用户列表。
使用上述同样的方法可以依次创建
Topic
Reply
Category
等控制器。
表格调整
User
表格,头像显示 在grid
函数中添加:
$grid->column('avatar')->display(function($avatar) {
return "<img src='" . $avatar . "' width='100px height='100px'/>";
});
Topic
表格用户名、分类名 在grid
函数中添加:
$grid->user()->name('User Name');
$grid->category()->name('Category Name');
遇到的报错
- Config Error
Config error.
Disk [admin] not configured, please add a disk config in `config/filesystems.php`.
解决方法是在config/filesystems.php
的disk
配置中添加如下代码:
'admin' => [
'driver' => 'local',
'root' => public_path('uploads'),
'visibility' => 'public',
'url' => env('APP_URL').'/uploads',
],