Defender 项目使用教程
defender Roles & Permissions for Laravel 项目地址: https://gitcode.com/gh_mirrors/def/defender
1. 项目的目录结构及介绍
Defender 项目的目录结构如下:
defender/
├── spec/
│ └── Defender/
├── src/
│ ├── Providers/
│ └── Traits/
├── tests/
├── .gitignore
├── .php_cs
├── .styleci.yml
├── .travis.yml
├── LICENSE
├── README.md
├── composer.json
├── composer.lock
├── phpspec.yml
├── phpunit.xml
目录结构介绍
- spec/: 包含项目的测试规范文件。
- src/: 项目的核心代码,包括服务提供者和特性。
- Providers/: 包含服务提供者文件。
- Traits/: 包含项目的特性文件。
- tests/: 包含项目的测试文件。
- .gitignore: Git 忽略文件配置。
- .php_cs: PHP 代码风格配置文件。
- .styleci.yml: StyleCI 配置文件。
- .travis.yml: Travis CI 配置文件。
- LICENSE: 项目许可证文件。
- README.md: 项目说明文件。
- composer.json: Composer 依赖配置文件。
- composer.lock: Composer 锁定文件。
- phpspec.yml: PHPSpec 配置文件。
- phpunit.xml: PHPUnit 配置文件。
2. 项目的启动文件介绍
Defender 项目的启动文件主要包括以下几个部分:
2.1 服务提供者注册
在 config/app.php
文件中注册 Defender 服务提供者:
'providers' => [
// 其他服务提供者
\Artesaos\Defender\Providers\DefenderServiceProvider::class,
]
2.2 用户类配置
在 User
类中添加 HasDefender
特性:
namespace App;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Artesaos\Defender\Traits\HasDefender;
class User extends Authenticatable
{
use HasDefender;
}
2.3 发布配置文件和迁移
执行以下命令发布配置文件和迁移:
php artisan vendor:publish
php artisan migrate
3. 项目的配置文件介绍
Defender 项目的配置文件主要包括以下几个部分:
3.1 composer.json
composer.json
文件定义了项目的依赖关系和元数据:
{
"require": {
"artesaos/defender": "~0.10.0"
}
}
3.2 config/app.php
在 config/app.php
文件中配置 Defender 的别名和中间件:
'aliases' => [
// 其他别名
'Defender' => \Artesaos\Defender\Facades\Defender::class,
]
'routeMiddleware' => [
// 其他中间件
'needsPermission' => \Artesaos\Defender\Middlewares\NeedsPermissionMiddleware::class,
'needsRole' => \Artesaos\Defender\Middlewares\NeedsRoleMiddleware::class,
]
3.3 defender.php
defender.php
是 Defender 的配置文件,包含权限和角色的配置:
return [
'user_model' => App\User::class,
// 其他配置项
];
通过以上步骤,您可以成功配置和使用 Defender 项目。
defender Roles & Permissions for Laravel 项目地址: https://gitcode.com/gh_mirrors/def/defender