laravel 播种数据库后回滚种子

laravel seed rollback after seeding database

我已经使用 php artisan db::seed 对我的数据库进行了播种。有没有办法回滚 我在我的数据库中植入的内容?

我似乎找不到像 php artisan db::seed rollback 这样的命令。

为 Laravel 使用撤消播种器。

安装 UndoSeeder 时,可以使用以下 artisan 命令:

db:seed-undo    Undo seeds in the seeds directory.
db:seed-refresh Undo seeds run seeds again.

更多Undo-Seeder

You may also seed your database using the migrate:refresh command, which will also rollback and re-run all of your migrations. This command is useful for completely re-building your database:

php artisan migrate:refresh --seed

Running Seeders

如果您想清除某些 table,则只需截断 table,然后重新播种:

php artisan db:seed --class=UsersTableSeeder

如此简单的任务不需要额外的包。

我一直在寻找其他东西,比如我有 运行 php artisan db:seed,然后我想在 UserSeeder 中更改一些东西,比如更改电子邮件地址。

因此,如果您想在 Seeder class 中更改某些内容,并且您已经有 运行 db:seed 命令。

然后你所要做的就是根据你的选择改变你的播种机class功能,然后重新运行命令。

php artisan db:seed

它将根据您的更改再次播种所有 classes。

最简单的方法是进入您的

database/seeders

文件夹并手动删除要删除的文件,然后 运行 php artisan migrate:fresh