1masoud
5 سال پیش توسط 1masoud مطرح شد
7 پاسخ

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

@ali.bayat
کد من هم اینه

$valiDate = $this->validate($request, [

            'start_color' => '',
            'end_color' => '',
            'font family' => '',
            'background_color' => '',
            'Previous_Text_Color' => '',
            'next text color' => '',
            'text_color' => '',
        ]);
        $y = auth()->user()->color1()->create([
            'start_color' => $valiDate['start_color'],
            'end_color' => $valiDate['end_color'],
            'font family' => $valiDate['font family'],
            'background_color' => $valiDate['background_color'],
            'Previous_Text_Color' => $valiDate['Previous_Text_Color'],
            'next text color' => $valiDate['next text color'],
            'text_color' => $valiDate['text_color'],
        ]);
        return response([
            'data' => [
                'message' => 'color is registered',
            ],
            'status' => 'success',
            'ID' => $y->id
        ]);
    }

دلیل این ارور چیه؟

Call to undefined method App\\User::color۱()",

ثبت پرسش جدید
رضا جلیلیان
تخصص : لطفا تخصص خود را وارد کنید
@rezajalilian 5 سال پیش آپدیت شد
1

خیلی واضح داره بهت میگه که متد color1 رو ‍‍پیدا نمیکنه مدل user هاتو نگا کن ببین اصلا تعریفش کردی تابع رو


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
1

داخل مدل User ریلیشن color1 رو تعریف نکردی ولی میخوای ازش استفاده کنی و create کنی!


1masoud
تخصص : php,laravel
@masoudproton 5 سال پیش مطرح شد
0

@abase607
آره تعریف کردم

public function color1()
    {
        return $this->hasMany(ColorModel::class,'admin_id');
    }

نوید
تخصص : برنامه نویس Go / Django
@navids 5 سال پیش مطرح شد
0
public function ColorModel()
    {
        return $this->hasMany(ColorModel::class,'admin_id');
    }

اسم فانکشن با اسم کلاس باید یکی باشه ، در صورتی که یکی نباشن نمیشناسه

بعد هم برای خوانایی کار ، به جای admin_id اسم جدولتو باید بزاری

ColorModel_id

اینطوری کدهات خوانایی بیشتری دارن و نیازی به تعریف پارامتر هم نخواهی داشت


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
0

@navids
اسم فانکشن نیازی نیست با اسم کلاس یکسان باشه. خودمون داریم کلاس رو بهش پاس میدیم و اسم فانکشن سرور یه نامگذاری برای رابطه ی بین مدل ها هست.


1masoud
تخصص : php,laravel
@masoudproton 5 سال پیش مطرح شد
0

@khanzadimahdi
متوجه نشدم الان باید کدم رو چطوری بنویسم


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
0

کدت مشکلی نداره! خروجی بگیر ببین auth()->user() خالیه یا پره؟


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

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