Laravel 4 db种子特定播种机文件

use*_*781 34 database laravel-4

我有一个现有的用户表,其中包含db:seed来自UserSeeder.php的信息.现在,我正在添加新的产品表,并希望将信息播种到产品表中.如何防止Laravel将UserSeeder播种到数据库中,但只有新的ProductSeeder被播种?

谢谢.

Saj*_*ikh 62

您可以按类名调用各个种子类.来自文档.

默认情况下,db:seed命令运行DatabaseSeeder类,该类可用于调用其他种子类.但是,您可以使用--class选项指定要单独运行的特定播种器类:

php artisan db:seed --class=ProductTableSeeder
Run Code Online (Sandbox Code Playgroud)

在上面的示例中,ProductTableSeeder该类应该存在database/seeds.

  • 如果对播种器命名空间,则需要以下列格式提供命名空间路径:```Vendor \\ Foo \\ Seeders \\ DatabaseSeeder``` (8认同)
  • 如果您刚刚创建了新的播种器,请不要忘记运行“composer dump-autoload”。否则你会得到“XySeeder 类不存在” (6认同)

Mah*_*alt 13

这是一个具有完整命名空间的类的工作示例:

应该使用双反斜杠\\

班级名称是DefaultBannersSeeder.

php artisan db:seed --class=App\\Containers\\Banners\\Data\\Seeders\\DefaultBannersSeeder
Run Code Online (Sandbox Code Playgroud)