فرزاد عامری
1 سال پیش توسط فرزاد عامری مطرح شد
2 پاسخ

دریافت خطا در لاراول

سلام امیدوارم حالتون خوب باشه
من در لاراول یک Seed ساختم سپس در فایلی که ساخته شد کد زیر قرار دادم

<?php

namespace Database\Seeders;

use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;

class ArticleTableSeeder extends Seeder
{
    public function run(): void
    {
            DB::table('articles')->insert([
                'title' => 'Title',
                'slug' => 'Articles-1',
                'body' => 'This Is Article '
            ]);
    }
}

بعد در ترمینال دستور زیر نوشتم

php artisan db:seed --class=ArticleTableSeeder

که با خطای زیر روبرو شدم


   INFO  Seeding database.

   Error

  Class "Database\Seeders\DB" not found

  at database\seeders\ArticleTableSeeder.php:12
      8▕ class ArticleTableSeeder extends Seeder
      9▕ {
     10▕     public function run(): void
     11▕     {
  ➜  12▕             DB::table('articles')->insert([
     13▕                 'title' => "Title",
     14▕                 'slug' => "Article",
     15▕                 'body' => "This Is Article "
     16▕             ]);

  1   vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:36
      Database\Seeders\ArticleTableSeeder::run()

  2   vendor\laravel\framework\src\Illuminate\Container\Util.php:41
      Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()

ممنون میشم راهنمایی کنید


ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 1 سال پیش آپدیت شد
1

در خط 12 فایل ArticleTableSeeder :
شما از کلاس DB استفاده کردید که برنامتون متوجه نشده منظورتون کدوم کلاسه. به همین خاطر مشخصا داره میگه:
‍‍Class "Database\Seeders\DB" not found

راهکار معرفی آدرس دقیق این کلاس هست. بالای این فایل میتونید اضافه کنید:

use Illuminate\Support\Facades\DB;

و یا اینکه به اختصار این رو هم می‌تونید بنویسید:

use DB;

sina shakiba
تخصص : برنامه نویس وب
@sina.shakiba 1 سال پیش مطرح شد
1

سلام وقت بخیر.
باید کلاس DB را در کلاس ArticleTableSeeder اضافه کنی. دستور زیر:

use Illuminate\Support\Facades\DB;

موفق باشید


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 1 سال پیش آپدیت شد
1

در خط 12 فایل ArticleTableSeeder :
شما از کلاس DB استفاده کردید که برنامتون متوجه نشده منظورتون کدوم کلاسه. به همین خاطر مشخصا داره میگه:
‍‍Class "Database\Seeders\DB" not found

راهکار معرفی آدرس دقیق این کلاس هست. بالای این فایل میتونید اضافه کنید:

use Illuminate\Support\Facades\DB;

و یا اینکه به اختصار این رو هم می‌تونید بنویسید:

use DB;

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام