在 laravel 8 中出现一个名为“Class 'Database\Seeders\App\Models\Product' not found'' 的错误

Posted

技术标签:

【中文标题】在 laravel 8 中出现一个名为“Class \'Database\\Seeders\\App\\Models\\Product\' not found\'\' 的错误【英文标题】:Getting a error called ''Class 'Database\Seeders\App\Models\Product' not found'' in laravel 8在 laravel 8 中出现一个名为“Class 'Database\Seeders\App\Models\Product' not found'' 的错误 【发布时间】:2021-02-28 23:02:21 【问题描述】:

我目前正在学习在 laravel 中创建购物车。但是在运行种子命令时,我收到一个名为 Class 'Database\Seeders\App\Models\Product' not found 的错误

首先我创建了名为“Product”的数据库迁移并添加了这些。

 public function up()

    Schema::create('products', function (Blueprint $table) 
        $table->increments('id');
        $table->timestamps();
        $table->string('imagepath');
        $table->string('card-title');
        $table->text('card-text');
        $table->integer('card-price');
        
    );

然后我创建了一个名为“ProductTableSeeder”的播种机。 之后,我在 App\Models

中的 Product.php 中的数组中定义了所有这些
class Product extends Model

protected $fillable = ['imagepath','card-title','card-text','card-price'];

然后我在“ProductTableSeeder”中传递数组

public function run()

   $product= new App\Models\Product ([
    'imagepath'=>'assets/img/plants/7.jpg',
    'card-title'=>'Books',
    'card-text'=>'aaaaaaaa',
    'card-price'=>'500',
   ]);
   $product->save();

最后,在“DatabaseSeeder”中,我调用 ProductTableSeeder 以在我运行种子命令后执行

 public function run()

    $this->call(ProductTableSeeder::class);

【问题讨论】:

【参考方案1】:
$product= new App\Models\Product ([

应该是这样的;

$product= new \App\Models\Product ([

在您的 ProductTableSeeder.php 文件中查看它

【讨论】:

非常感谢!很抱歉打扰你这么愚蠢的问题xD 这不是一个愚蠢的问题 :) 你的代码可以在大多数地方工作,但是播种机默认没有命名空间,这就是为什么你需要第一个 `\` @TimLewis 谢谢你

以上是关于在 laravel 8 中出现一个名为“Class 'Database\Seeders\App\Models\Product' not found'' 的错误的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 8:找不到类'App\Policies\Gate'

Laravel 8:在刀片视图上过滤/显示数据,数组保存在数据库中

laravel 8中扩展模型的工厂

刀片中的 Laravel 8 路线

Laravel Echo 没有收到推送者的通知

菜鸟成长日记:Java基础篇8 --- 内部类