パッケージを作成していて、その中に db シードを入れたいと思っています。これらのシードが行うことは、既存のテーブルにいくつかの新しい行を追加することだけです。パッケージのアンインストール時にこれらの行を削除する「unseed」オプションも必要です。
これについてどうすればよいかわかりませんか?ベストプラクティスとは?
ありがとう
パッケージを作成していて、その中に db シードを入れたいと思っています。これらのシードが行うことは、既存のテーブルにいくつかの新しい行を追加することだけです。パッケージのアンインストール時にこれらの行を削除する「unseed」オプションも必要です。
これについてどうすればよいかわかりませんか?ベストプラクティスとは?
ありがとう
最も簡単なオプションは、通常どおりシード クラスを作成し、そのオプションを指定してdb:seed
コマンドを実行するようにユーザーに指示することです。--class[=CLASS]
たとえば、MyPackage\Seeds\Install
行を追加MyPackage\Seeds\Remove
したり削除したりするためのシード クラスをパッケージに含めることができます。パッケージのユーザーは、これらのシードを次のように実行できます。
php artisan db:seed --class="MyPackage\Seeds\Install"
php artisan db:seed --class="MyPackage\Seeds\Remove"