Laravel?? ??? ??? ?? ?? ?? ? ???? ???? ??
Nov 03, 2023 am 08:35 AMLaravel??? ??? ??? ?? ?? ?? ? ???? ???? ?? ???? ?? ?????. ? ????? ??? ??? ???? ????? ??? ???? ?? Laravel? ?? ?? ????? "spatie/laravel-permission"? ???? ??? ?????. ??? ??? ? ? ???? ?? ? ????? ??? ?? ????? ???????.
1. laravel-permission ??
?? Laravel ????? "spatie/laravel-permission" ??? ???? ???? ???. ?? ??? ???? ?????.
composer require spatie/laravel-permission
?? ? ??????? ???? ?? ?? ?? ???? ???? ???.
php artisan vendor:publish --provider="SpatiePermissionPermissionServiceProvider" --tag="migrations" php artisan migrate
2. ?? ? ?? ??
? ???? "Management"?? ? ?? ??? ?????. " "???"? "?? ???"? ???? ????? ?? ???? ? ? ?? ??? ?????.
?? config/auth.php ??? ?? ? ?? ?? ??? ???? ???:
'providers' => [ 'users' => [ 'driver' => 'eloquent', 'model' => AppModelsUser::class, ], 'roles' => [ 'driver' => 'eloquent', 'model' => SpatiePermissionModelsRole::class, ], 'permissions' => [ 'driver' => 'eloquent', 'model' => SpatiePermissionModelsPermission::class, ], ],
?? ?? ??? ??? ?? ? ???? ??? ?????:
namespace AppModels; use IlluminateDatabaseEloquentFactoriesHasFactory; use IlluminateFoundationAuthUser as Authenticatable; use SpatiePermissionTraitsHasRoles; class User extends Authenticatable { use HasFactory, HasRoles; //... }
?? ?? Seeder? ?? ? ??:
use IlluminateDatabaseSeeder; use SpatiePermissionModelsPermission; use SpatiePermissionModelsRole; class RolesAndPermissionsSeeder extends Seeder { public function run() { //創(chuàng)建角色 Role::create(['name' => 'admin']); Role::create(['name' => 'user']); //創(chuàng)建權(quán)限 Permission::create(['name' => 'view_all_data']); //管理員擁有所有權(quán)限 Role::findByName('admin')->givePermissionTo(Permission::all()); } }
3. ?? ?? ? ??
???? ????? Authorize() ???? ???? ????? ?? ??? ??? ?????. ?? ??, ?? ??? ????? "view_all_data" ??? ?????.
public function index() { $this->authorize('view_all_data'); //... }
?? ??? can() ???? ???? ?? ????? ?? ??? ??? ??? ? ????. ?? ??, ?? ???? "?? ??? ??" ??? ????? "view_all_data" ??? ?? ???? ?????.
@if(auth()->user()->can('view_all_data')) <button>查看所有數(shù)據(jù)</button> @endif
? ???? ????? role() ???? ???? ????? ?? ??? ??? ?????. ?? ??, ?? ???? "??? ??"? ????? "???" ??? ?? ???? ?????.
@if(auth()->user()->hasRole('admin')) <menu>管理員菜單</menu> @endif
4. ??? ??? ?? ???
??? ???? ?? ??? ???? ?? ?? ??? ????. ?? ???? ?? ?? ??? ?? ???? ??????. ?? ?? ???? "??" ??? ? ? ??? ??? ? ????.
@if(auth()->user()->can('delete_data')) <button>刪除</button> @endif
??? ??? ?? ???? ????? ?? ??? ?? ? ?? ?? ? ??? ????? ???? ?? ?? ??? ?????. ?? ? ?? ?? ?? ??. ?? ? ??? ???? ???? ????? ?? ??? ????? ??? ? ????.
Blade::directive('can', function ($expression) { return "<?php if(auth()->user()->can({$expression})): ?>"; }); Blade::directive('endcan', function () { return "<?php endif; ?>"; });
? ??? ???? ??? ?? ???? ??? ??? ???? ???? ? ????.
@can('delete_data') <button>刪除</button> @endcan
??? ???? ??? ?? ????? ??????.
Summary
Laravel? ?? ?? ????? "spatie/laravel-permission"? ???? ??? ??? ?? ?? ?? ? ???? ?? ??? ? ????. ??? ???? ???? ??? ???? ???? ????? ??? ?? ????? ??? ???? ?? ???? ???? ? ????.
? ??? Laravel?? ??? ??? ?? ?? ?? ? ???? ???? ??? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

PHP ? SQLite? ???? ??? ?? ? ??? ?? ?? ?? ? ???????? ??? ?? ? ??? ??? ?? ??? ?????. ??? ?? ??? ?? ??? ???? ?? ???? ??? ???? ? ??? ? ? ????. ? ????? PHP ? SQLite? ???? ?? ??? ?? ? ??? ??? ???? ??? ?????. ?? ??? ? ?? ??? ?? ??? ???? ?? SQLite ??????? ???? ???. ??? ??? ??? ???? ?? ???? ????.

uniapp?? ?? ?? ? ??? ??? ???? ?? ??? ??????? ????? ?? ?? ? ??? ??? ?????? ??? ??? ??? ?????. uniapp??? ? ?? ???? ??? ???? ? ? ?? ??? ???? ??????? ?? ? ??? ??? ???? ? ????. ? ????? uniapp?? ?? ?? ? ??? ??? ???? ??? ???? ??? ? ?? ? ?? ???? ?? ??? ?????. 1. ?? ?? ?? ??? ??????? ???? ?? ?????? ? ??? ?? ??? ???? ?? ?? ?? ??? ???? ?? ?????.

Laravel? ??? ?? ? ?? ??: ?? ??? ? ?? ?? ?? ??: ?? ? ???????? ??? ?? ? ?? ??? ?? ??? ?? ? ?????. ?? ???? PHP ?????? Laravel? ?? ??? ? ?? ??? ?? ?? ??? ???? ???? ??? ??? ?????. ? ???? Laravel?? ??? ?? ? ?? ?? ??? ???? ??? ???? ?? ?? ??? ?????. 1. ?? ? ?? ?? Laravel?? ??? ??? ?????.

Laravel ?? ??? ?? ?? ??: ??? ??? ???? ????? ?? ?? ??? ?????. ??: Laravel? ????? ??? ? ??????? ???? ? ??? ?? ?? ??? ??? ???? ?? ???? ?? ?? PHP ????????. ??? ?? ? ??? ??? ??? ?? ??????? ?? ??? ?? ??? ???? ???? ?? ?????. ??? ?? ??? ??? ???? ??? ?? ?????? ???? ?? ?? ? ??????? ?? ?? ?????.

C#?? ?? ?? ? ??? ????? ?? ?? ??? ?????. ??? ??? ???? ?? ?? ??? ?? ? ??? ?? ????. ???? ???? ??? ???? ?? ?? ??? ??? ????? ???? ??? ?????. ????? ???? ????? ??? C#? ?? ?? ? ??? ???? ? ??? ?? ??? ??? ??? ?????? ?????. ?? ??? ???? ID, ??, ?? ?? ?? ?? ???? ?? ???? ???? ???? ?? ?????. ?? ??? ???? ???? ??? ??? ????.

PHP?? ??? ??? ? ?? ??? ???? ??? ?????? ? ??????? ??? ? ??? ??? ? ?? ??? ?? ??? ?? ? ?????. ??? ???? ?? ???? ???? ???? ??? ?? ??? ?? ??? ??? ? ????. ? ????? PHP? ???? ??? ??? ? ?? ?? ??? ???? ??? ?????. 1. ??? ??? ?? ??? ??? ??? ???? ?? ??? ??? ? ?? ?????. ??? ??? ???? ?? ??? ??? ? ????. ??? ?? ??? ??? ?? ???????.

uniapp?? ?? ?? ??? ???? ?? ?? ? ?? ??? ???? ?? uniapp ????? ??? ? ?? ??? ???? ???? ?? ??? ?? ????. ? ??? ???? ?? uniapp?? ???? ?? ?? ?? ??? ??? ? ????. ? ????? ?? ?? ??? ???? uniapp?? ?? ?? ? ?? ??? ???? ??? ???? ?? ?? ??? ?????. ?? ?? ??? ?????. ?? uniapp ????? main.js ???? ??? ?????.

Zend Framework?? ?? ??? ?? ACL(AccessControlList)? ???? ?? ??: ? ???????? ?? ??? ??? ?????. ?? ???? ??? ??? ?? ???? ???? ???? ? ??? ?? ?? ???? ?????. Zend ?????? ACL(AccessControlList) ?? ??? ???? ?? ??? ???? ??? ??? ?????. ? ????? Zend Framework?? ACL? ???? ??? ?????.
