🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۴ mohammad
عدم وجود protected $model در فکتوری
جامعه لاراول ایجاد شده در ۱۹ دی ۱۴۰۰

درود

بازدن دستور

 php artisan make:factory VideoFactory

برای من در فکتوری  عبارت

protected $model = Video::class;

رو نمیسازه. ولی وقتی با tinker میام به مدل و اطلاعات فیک میسازم ، اطلاعات فیک در دیتابیس به درستی میشینه

 App\\Models\\Video::factory()->create()

مشکلی در کارم هست؟ ( Laravel v8.78.0 )

اینم کد‌های فکتوری هست


namespace Database\\Factories;
use Illuminate\\Database\\Eloquent\\Factories\\Factory;
class VideoFactory extends Factory
{
   /**
    * Define the model's default state.
    *
    * @return array
    */
   public function definition()
   {
       return [
           'name'=> $this->faker->name(),
           'url'=>'https://google.com',
           'length'=>120,
           'slug'=>$this->faker->slug()
       ];
   }
}

سلام دوست عزیز

همین که اطلاعات فیک به درستی قرار میگیره یعنی کارتون رو درست انجام دادین، اما مطمئن هستین

protected $model = Video::class

مقداردهی نمیشه؟ امکانش هست با ساختن یک فکتوری دیگه که مدلش موجود هست تست کنید؟


رضا * ۱۹ دی ۱۴۰۰، ۱۷:۴۶

درود

چند مدل مختلف ساختم و تست کردم ولی در هیچ فکتوری

protected $model = Video::class

رو نمیسازه


mohammad ۲۳ دی ۱۴۰۰، ۰۵:۳۷

سلام دوست عزیز

در صورتی که پراپرتی مدل ست نشه از روی اسم کلاس شناسایی میکنه مدل مربوطه رو، به این دلیل به شما خطا نمیده

اگر بخواید میتونید از طریق آموزش زیر اضافه کنید

https://stackoverflow.com/questions/70310252/why-is-php-artisan-makefactory-not-generating-with-a-model

محمد گازری ۱۳ اسفند ۱۴۰۰، ۱۴:۲۴

به عنوان مثال اگر اسم کلاس و اسم فایل UserFactory به UsersFactory تعییر بدیم و factory رو صدا بزنیم به ما خطای زیر رو میده

include(C:\\laragon\\projects\\laravel\\database\\factories\\UserFactory.php): Failed to open stream: No such file or directory
محمد گازری ۱۳ اسفند ۱۴۰۰، ۱۴:۳۷