我正在创建一个包,并希望在其中包含db种子。所有这些种子都会将一些新行添加到已存在的表中。我也喜欢" unseed"卸载程序包时删除这些行的选项。
我不确定该如何解决这个问题?什么是最佳做法?
由于
答案 0 :(得分:8)
最简单的选择是像往常一样创建种子类,并指示用户使用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"