创建管理员模型并迁移:
php artisan make:admin -m
更新 /config/auth 并设置您的 admin auth 防护
'guards' => [
...
'admin' => [
'driver' => 'session',
'provider' => 'admin',
],
],
'providers' => [
...
'admin' => [
'driver' => 'eloquent',
'model' => env('ADMIN_AUTH_MODEL', App\Models\Admin::class),
],
'passwords' => [
...
'admin' => [
'provider' => 'admin',
'table' => env('AUTH_ADMIN_PASSWORD_RESET_TOKEN_TABLE', 'admin_password_reset_tokens'),
'expire' => 60,
'throttle' => 60,
],
更新您的管理员模型,如下所示:
use Illuminate\Foundation\Auth\User as Authenticatable;
class Admin extends Authenticatable {
protected $fillable = [
'name',
'email',
'password',
];
/**
* The attributes that should be hidden for serialization.
*
* @var array<int, string>
*/
protected $hidden = [
'password',
'remember_token',
];
/**
* The attributes that should be cast.
*
* @var array<string, string>
*/
protected $casts = [
'email_verified_at' => 'datetime',
'password' => 'hashed',
];
}
如果您已经由 Filament 创建了 'AdminPanelProvider.php',请按如下方式进行更新:
class AdminPanelProvider extends PanelProvider
{
public function panel(Panel $panel): Panel
{
return $panel
->default()
->id('admin')
->path('admin')
->login()
->colors([
'primary' => Color::Amber,
])
...
->authMiddleware([
Authenticate::class,
])
->authGuard('admin'); // add this
}
}
最后,运行:
php artisan make:filament-user 设置您的第一个 Admin 用户。