Browse Source

refactor(database): 调整数据库配置和初始化脚本

- 修改 .env.example 中的数据库配置,简化路径
- 更新 composer.json 中的数据库初始化脚本
- 种子数据迁移至独立命令
- 规范化文件路径和命名
- 删除示例数据迁移和种子文件
dongasai 5 months ago
parent
commit
6e991b8528

+ 1 - 1
.env.example

@@ -9,7 +9,7 @@ LOG_DEPRECATIONS_CHANNEL=null
 LOG_LEVEL=debug
 
 DB_CONNECTION=sqlite
-DB_DATABASE=database/database.sqlite
+DB_DATABASE=database.sqlite
 
 BROADCAST_DRIVER=log
 CACHE_DRIVER=file

+ 3 - 2
composer.json

@@ -45,10 +45,11 @@
     "scripts": {
         "module_init": [
             "@php -r \"if (!file_exists('.env')) { copy('.env.example', '.env'); echo 'Created .env file from .env.example\\n'; } else { echo '.env file already exists\\n'; }\"",
-            "@php -r \"if (!file_exists('database/database.sqlite')) { if (!is_dir('database')) mkdir('database', 0755, true); touch('database/database.sqlite'); echo 'Created database/database.sqlite\\n'; } else { echo 'database/database.sqlite already exists\\n'; }\"",
+            "@php -r \"if (!file_exists('database.sqlite')) { touch('database.sqlite'); echo 'Created database.sqlite\\n'; } else { echo 'database.sqlite already exists\\n'; }\"",
             "@php -r \"if (file_exists('.env') && !strpos(file_get_contents('.env'), 'APP_KEY=') !== false) { echo 'Generating application key...\\n'; }\"",
             "vendor/bin/testbench key:generate --ansi",
-            "vendor/bin/testbench migrate --seed --ansi"
+            "vendor/bin/testbench migrate --ansi",
+            "vendor/bin/testbench db:seed --class=\\\\DcatAdminDemo\\\\Database\\\\Seeders\\\\DatabaseSeeder --ansi"
         ]
     },
     "minimum-stability": "dev",

+ 0 - 0
src/database/factories/.gitkeep → src/Database/Seeders/.gitkeep


+ 0 - 0
src/database/seeders/DatabaseSeeder.php → src/Database/Seeders/DatabaseSeeder.php


+ 34 - 0
src/Database/Seeders/DemoSeeder.php

@@ -0,0 +1,34 @@
+<?php
+
+namespace DcatAdminDemo\Database\Seeders;
+
+use Illuminate\Database\Seeder;
+use DcatAdminDemo\Models\Demo;
+
+class DemoSeeder extends Seeder
+{
+    /**
+     * Run the database seeds.
+     */
+    public function run(): void
+    {
+        // 创建示例数据
+        Demo::create([
+            'name' => '欢迎使用Dcat Admin Demo',
+            'description' => '这是一个Dcat Admin模块的演示示例,展示了如何创建和管理后台模块。',
+            'status' => true,
+        ]);
+
+        Demo::create([
+            'name' => '模块功能演示',
+            'description' => '本模块包含了完整的CRUD操作、数据表格、表单构建等功能演示。',
+            'status' => true,
+        ]);
+
+        Demo::create([
+            'name' => '开发指南',
+            'description' => '通过本示例,您可以学习如何开发自己的Dcat Admin模块。',
+            'status' => false,
+        ]);
+    }
+}

+ 0 - 0
src/database/migrations/.gitkeep → src/Database/factories/.gitkeep


+ 0 - 0
src/database/seeders/.gitkeep → src/Database/migrations/.gitkeep


+ 0 - 0
src/database/migrations/2025_07_27_000000_create_demos_table.php → src/Database/migrations/2025_07_27_000000_create_demos_table.php


+ 1 - 1
src/Providers/MAdminDemoServiceProvider.php

@@ -30,7 +30,7 @@ class MAdminDemoServiceProvider extends ServiceProvider
         $this->loadViewsFrom(__DIR__ . '/../resources/views', 'madmindemo');
         
         // 加载迁移文件
-        $this->loadMigrationsFrom(__DIR__ . '/../database/migrations');
+        $this->loadMigrationsFrom(__DIR__ . '/../Database/migrations');
         
         // 发布配置文件
         $this->publishes([

+ 0 - 40
src/database/seeders/DemoSeeder.php

@@ -1,40 +0,0 @@
-<?php
-
-namespace DcatAdminDemo\Database\Seeders;
-
-use Illuminate\Database\Seeder;
-use DcatAdminDemo\Models\Demo;
-
-class DemoSeeder extends Seeder
-{
-    /**
-     * Run the database seeds.
-     */
-    public function run(): void
-    {
-        // 创建示例数据
-        Demo::create([
-            'title' => '欢迎使用Dcat Admin Demo',
-            'content' => '这是一个Dcat Admin模块的演示示例,展示了如何创建和管理后台模块。',
-            'status' => 1,
-            'created_at' => now(),
-            'updated_at' => now(),
-        ]);
-
-        Demo::create([
-            'title' => '模块功能演示',
-            'content' => '本模块包含了完整的CRUD操作、数据表格、表单构建等功能演示。',
-            'status' => 1,
-            'created_at' => now(),
-            'updated_at' => now(),
-        ]);
-
-        Demo::create([
-            'title' => '开发指南',
-            'content' => '通过本示例,您可以学习如何开发自己的Dcat Admin模块。',
-            'status' => 0,
-            'created_at' => now(),
-            'updated_at' => now(),
-        ]);
-    }
-}