如何在 laravel 5 新增自訂類別(class)

$ php artisan db:seed
這條指令只會執行預設的DatabaseSeeder.php這個檔案,想讓他一起呼叫資料填充類別

首先你要先在composer.json中設定你的目錄指向,"autoload"中新增"Database"
"autoload": {
        "classmap": [
            "database"
        ],
        "psr-4": {
            "App\\": "app/",
            "Database\\": "database/"
        }
    }
執行 $ composer dump-autoload 讓composer讀進變更

然後在 database/seeds/ArticlesSeeder.php (透過$ php artisan make:seeder 建立的自訂class) 加上namespace
<?php
namespace Database\seeds;
use Illuminate\Database\Seeder;
use DB;
class ArticlesSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        //
        DB::table('articleclass')->insert([
            'classname' => str_random(10)
        ]);
    }
}

最後在 database/seeds/DatabaseSeeder.php中加上
use Database\seeds\ArticlesSeeder;
public function run()中呼叫class
$ArticleSeeder = new ArticlesSeeder();
$ArticleSeeder->run();

psr-4補充

留言

這個網誌中的熱門文章

[Arduino]電子秤平 重量感測條+HX711AD模組

cpe練習筆記 UVa10019 Funny Encryption Method

cpe練習筆記 UVa10041 Vito's family