momenoor / backpackusermanager
使用Backpack CRUD的Laravel用户管理界面。
Requires
- backpack/crud: ^5.5.6
Requires (Dev)
- phpunit/phpunit: 4.*
- scrutinizer/ocular: ~1.1
This package is auto-updated.
Last update: 2024-09-26 21:39:26 UTC
README
使用 Backpack for Laravel,轻松添加/编辑/删除用户的管理后台。
Backpack 4
Backpack 3
安全更新和重大变更
请 订阅Backpack通讯,以便了解任何安全更新、重大变更或新功能。我们每月发送1-2封邮件。
在Backpack v4.1(Laravel 6或Laravel 7)上安装
- 在您的终端
composer require momenoor/backpackusermanager
- 在您的User模型上添加Backpack的CrudTrait
默认:app/User.php
namespace App; class BackpackUser extends User { use \Backpack\CRUD\app\Models\Traits\CrudTrait; // <--- Add this line // ...
- [可选] 如果您的User模型不是
App\User::class
或您的用户表不是users
,您应该发布此包的配置文件,并在config/momenoor/usermanager.php
文件中更正这些假设。要发布文件,请运行
php artisan vendor:publish --provider="Momenoor\UserManager\UserManagerServiceProvider" --tag='config'
- [可选] 添加侧边栏链接
php artisan backpack:add-sidebar-content "<li class='nav-item'><a class='nav-link' href='{{ backpack_url('user') }}'><i class='nav-icon la la-user'></i> <span>Users</span></a></li>"
(或者,手动在 resources/views/vendor/backpack/base/inc/sidebar_content.blade.php
或 menu.blade.php
中添加一个项目)
在Backpack v4.0(Laravel 6或Laravel 7)上安装
- 在您的终端
composer require momenoor/backpackusermanager
- 在您的User模型上添加Backpack的CrudTrait
默认:app/Models/BackpackUser.php
namespace App\Models; use App\User; use Backpack\CRUD\app\Models\Traits\InheritsRelationsFromParentModel; use Backpack\CRUD\app\Notifications\ResetPasswordNotification as ResetPasswordNotification; use Illuminate\Notifications\Notifiable; use Backpack\CRUD\app\Models\Traits\CrudTrait; <--- Add this line class BackpackUser extends User { use InheritsRelationsFromParentModel; use Notifiable; use CrudTrait; <--- Add this line ...
- [可选] 添加侧边栏链接
php artisan backpack:add-sidebar-content "<li class='nav-item'><a class='nav-link' href='{{ backpack_url('user') }}'><i class='nav-icon fa fa-user'></i> <span>Users</span></a></li>"
(或者,手动在 resources/views/vendor/backpack/base/inc/sidebar_content.blade.php
或 menu.blade.php
中添加一个项目)
在Backpack v3(Laravel 5)上安装
- 在您的终端
composer require momenoor/backpackusermanager
- 对于Laravel <5.5,将服务提供者添加到您的config/app.php文件中
Momenoor\UserManager\UserManagerServiceProvider::class,
- 在您的User模型上使用以下特性
<?php namespace App; use Backpack\CRUD\CrudTrait; // <------------------------------- this one use Illuminate\Foundation\Auth\User as Authenticatable; class User extends Authenticatable { use CrudTrait; // <----- this /** * Your User Model content */
- [可选] 为它添加一个菜单项
php artisan backpack:base:add-sidebar-content "<li><a href='{{ backpack_url('user') }}'><i class='fa fa-user'></i> <span>Users</span></a></li>"
(或者,手动在 resources/views/vendor/backpack/base/inc/sidebar_content.blade.php
或 menu.blade.php
中添加一个项目)
如何扩展此包
当您需要对用户模型有更多控制时,最好的方法是复制代码。
您甚至可以自己创建 CRUD控制器,使用 php artisan backpack:crud user
并在 src/app/Http/Controllers/UserCrudController
中简单地添加 handlePasswordInput
和 addFields
方法。 查看代码
将源代码复制到您的项目中
转到 vendor/momenoor/usermanager/src
并复制
-
路由:在您的
routes/web.php
文件中的routes/momenoor/usermanager.php
-
控制器
app/Http/Controllers/UserCrudController.php
在您的app/Http/Controllers
文件夹内 -
请求
app/Http/Requests/*
在您的app/Http/Controllers
文件夹内 -
在UserCrudController中设置模型,例如
$this->crud->setModel('App/User'));
-
在每个文件中,将我的命名空间
Momenoor\UserManager\app\Http\Requests
替换为App\Http\Requests
现在您可以使用composer删除此包
composer remove eduardoarandah/usermanager
字段文档(更新/创建)
https://laravel-backpack.readme.io/docs/crud-fields
列文档(列表视图)
https://laravel-backpack.readme.io/docs/crud-columns-types
从Backpack 4.0升级到4.1
在将项目从Backpack 4.0升级到Backpack 4.1后成功使用此包,您需要
- 通过更改您的
composer.json
文件或运行composer require momenoor/usermanager:"^3.0"
来要求此包的版本^3.0
; - (很可能) 将用户模型在usermanager配置文件中从
App\Models\BackpackUser::class
更改为App\User::class
; - (不太可能) 如果您已在此包中扩展UserCrudController并修改了
handlePasswordInput()
函数,您还需要注意,现在使用设置器和获取器而不是直接作为属性来获取crud请求;请仔细阅读Backpack 4.1升级指南中的第11步,或查看此包中的新代码以获取灵感;