数据库调试篇
大约 1 分钟
提示
说明:在开发调试过程中难免会有测试,调试产生脏数据,为了不影响后续开发,需要将调试数据清空.需要对数据库,缓存,以及es进行清空,如果每次都整体初始化是非常繁琐的,因此特别整理该文档,方便开发调试
测试实例
在开发过程中,随着业务变化,后台业务菜单一定会出现调整,这里选用最具有代表性的菜单(Permission)调试来说明
数据库调试
- 位置:
database\seeders\DebugSeeder.php
当然也可以直接创建一个新的专门用于调试的seeder
- 前提
引入
<?php
namespace Database\Seeders;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use App\Attributes\Common\DocNote;
use App\Attributes\Common\DocParams;
use Database\Seeders\LaravelFastApi\System\PermissionSeeder;
#[DocNote('调试填充')]
class DebugSeeder extends Seeder
{
#[DocParams('执行文件迁移',['return'=>['type'=>'void']])]
public function run()
{
$this->call([
//调试权限路由
PermissionSeeder::class
]);
}
}- 执行
提示
因为所有的迁移文件都内置了truncate清空,所以这里直接执行即可
php artisan db:seed --class=DebugSeederes重新初始化
位置:
app\Services\Facade\Common\V1\Es\Console\EsSyncDataFacadeService.php前提
找到debug位置,将要专门调试的部分添加到debug中
'debug' => [
'code' => 1000000,
'handler' => function () {
$this->consoleOutput('开始批量执行所有测试数据同步ES--1', 'info');
\App\Facades\LaravelFastApi\V1\Es\Sync\System\EsSyncSystemFacade::syncPermission();
$this->consoleOutput('批量执行所有测试数据同步ES结束--1', 'info');
}
]- 执行
提示
因为内置了truncate清空,所以这里直接执行即可
php artisan sync:es debug