標準にデータをリセットするために押された場合、すべてのシーダーを実行するバックエンドに「リセット」ボタンを追加したいですか? 私はこのアイデアを持っている唯一の人ではないかもしれないが、残念ながら私はオンラインで何かを見つけることができないので、これを行う方法が必要です。Laravel表示するシード関数を表示する
は、あなたのコードから直接職人のコマンドを呼び出すことができ、事前
標準にデータをリセットするために押された場合、すべてのシーダーを実行するバックエンドに「リセット」ボタンを追加したいですか? 私はこのアイデアを持っている唯一の人ではないかもしれないが、残念ながら私はオンラインで何かを見つけることができないので、これを行う方法が必要です。Laravel表示するシード関数を表示する
は、あなたのコードから直接職人のコマンドを呼び出すことができ、事前
に対応していただきありがとうございます。たとえば、 以下のものは、すべてのシードとマイグレーションをリフレッシュします。あなたのコントローラから職人のコマンドを実行することができますphp artisan migrate:refresh --seed
Route::get('/reset', function(){
\Artisan::call('migrate:refresh',['--seed' => ' ']);
});
と同じである
:
Artisan::call('migrate:fresh'); // = php artisan migrate:fresh
Artisan::call('db:seed'); // = php artisan db:seed
// OR
Artisan::call('migrate:fresh', ['--seed' => true]);
さらに詳しい情報:https://laravel.com/docs/5.5/artisan#programmatically-executing-commands
あなたはすべての既存のデータを削除するためにSomeModel::truncate();
を使用することができます。オブジェクトを削除した後、$this->call(someTableSeeder::class);
を実行してテーブルを再度シードすることができます。
あなたはまた、あなたのPHPコードで職人のコマンドを呼び出すことができます(参照:https://laravel.com/docs/5.0/commands)が、この場合、あなたはArtisan::call('db:seed');