【发布时间】:2021-03-19 15:45:36
【问题描述】:
我在运行 php artisan db:seed 命令时发现了这个错误 请帮我解决这个错误
我的代码是
opportunitySeeder.php
<?php
namespace Database\Seeders;
use Illuminate\Support\Facades\DB;
use Illuminate\Database\Seeder;
class OpportunitySeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
//factory(Opportunity::class, 300)->create()
//Opportunity::factory()->count(200)->create()
//factory(Opportunity::class, 300)->create()->each(function($opportunity){
// $opportunity->$detail()->save(factory(OpportunityDetail::class)->make());
Opportunity::factory()->count(300)->create()->each(function($opportunity) {
$opportunity->detail()->save(OpportunityDeail::factory()->make()
);
});
}
}
机会工厂
$this->faker->sentence(150, true), 'description' =>$this->faker->text(500), 'category_id' =>Category::all()->random()->id, 'country_id' =>Country::all()->random()->id, 'deadline' =>$this->faker->dateTime(), '组织者' =>$this->faker->company, ]; } }
【问题讨论】:
-
那么,
Database\Seeders\Opportunity类是否存在于那个确切的命名空间中?如果它有不同的命名空间,你需要先use它。 -
您必须为 Opportunity 模型导入 use 声明:
use App\Models\Opportunity以及 OpportunityDetailuse App\Models\OpportunityDetail;并且您还有一个拼写错误save(OpportunityDeail::factory()它应该是save(OpportunityDetail::factory() -
您好,您尝试过 php artisan db:seed --class OpportunitySeeder
标签: php laravel laravel-artisan