Laravel 5.2 包中的数据库种子?

Laravel 5.2 database seeds in packages?

我正在创建一个包并希望在其中包含数据库种子。所有这些种子所做的就是向已经存在的 table 添加一些新行。我还想要一个 "unseed" 选项来在卸载包时删除这些行。

我不确定该怎么做?最佳做法是什么?

谢谢

最简单的选择是像往常一样创建种子 class 并指导用户 运行 db:seed 命令及其 --class[=CLASS] 选项。

例如,您的包可能包含种子 classes MyPackage\Seeds\Install 以添加行和 MyPackage\Seeds\Remove 以删除它们。您的软件包的用户可以 运行 这些种子:

php artisan db:seed --class="MyPackage\Seeds\Install" 
php artisan db:seed --class="MyPackage\Seeds\Remove"