pxlrbt / laravel-database-state
为您的生产数据库设置关键状态。
v1.0.4
2024-03-12 15:35 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^9.0|^10.0|^11.0
- spatie/laravel-package-tools: ^1.13.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^6.0
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^7.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-09-12 16:40:52 UTC
README
使用生产数据为您的数据库设置关键状态。
安装
您可以通过composer安装此包
composer require pxlrbt/laravel-database-state
添加自动加载
将 Database\States
命名空间添加到 composer.json
{ "autoload": { "psr-4": { "App\\": "app/", "Database\\Factories\\": "database/factories/", "Database\\Seeders\\": "database/seeders/", "Database\\States\\": "database/states/" } } }
创建您的第一个数据库状态
您可以通过CLI创建一个新的类: php artisan make:db-state
。这将在 database/States
目录中创建一个可调用的类。
确保您的数据库状态是幂等的,以确保连续运行不会创建重复条目或覆盖现有条目。
<?php namespace Database\States; use App\Models\User; class UserState { public function __invoke() { if (! User::where('user', 'info@example.com')->exists()) { User::forceCreate([ 'name' => 'Example User', 'email' => 'info@example.com', 'email_verified_at' => now(), 'password' => '$2y$10$etbrxzCyYhs598Abu6XdAeJ7GZQvDhOvE70XnRtoO25bvif1uEvSi', ]); } } }
感谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。