راکت

سوال در مورد find

7 پاسخ

@Alimotreb
@ali.bayat
@khanzadimahdi
این دستور کارش اینه که میرهid مورد نظر رو پیدا میکنه

ColorsModel::find($id)

حالا من میخوام به جای پیدا کردن idبره form_idو پیدا کنه دستورش چی میشه چطوری میشه یک فیلد دیگه رو پیدا کردن این دسنوررو تو قسمت editدارم مینویسم

1masoud
1masoud
@masoudproton
ثبت پرسش جدید

پاسخ‌ها

7
TEFO
TEFO
@tefo.ha27

تخصص: لاراول

این دستور میره توی primary key به دنبال اون مقداری که بهش دادین میگرده نه id حالا چون پیش فرض کلید اصلی id هست میره اونجا میگرده
ولی میتونین از where استفاده کنین

mahdi khanzadi
mahdi khanzadi
@khanzadimahdi

تخصص: Software engineer

به صورت زیر عمل کنید

ColorsModel::where('form_id','=',$form_id)->first()

شاید پاسخ شما همین‌جا باشد

1masoud
1masoud
@masoudproton

تخصص: php,laravel

@khanzadimahdi

الان تو قسمت editاگه اینو بنویسم چطوری save کنم کد من اینه
می خوام $idحذف شه فقط باform_idبیا این کارو انجام بده

public function colors_edit1(Request $request,$id,$form_id)
    {
        $valiDate = $this->validate($request, [
            'admin_id'=>'',
            'form_id' => 'min:0|max:7',
            'color_scheme' => 'min:0|max:7',
            'page_color' => '',
            'page_image' => 'min:0|max:7',
            'form_color' => 'min:0|max:7',
            'font_color' => 'min:0|max:7',
            'input_background' => 'min:0|max:7',
        ]);
        $user= ColorsModel::find($id);
        if ($user->admin_id == auth()->user()->id && $user->form_id == $form_id) {
            $user->admin_id=auth()->user()->id;
            $user->form_id = $valiDate['form_id'];
            $user->color_scheme = $valiDate['color_scheme'];
            $user->page_color = $valiDate['page_color'];
            $user->page_image = $valiDate['page_image'];
            $user->form_color = $valiDate['form_color'];
            $user->font_color = $valiDate['font_color'];
            $user->input_background = $valiDate['input_background'];
            if ($user->update()) {
                return response([
                    'data' => [
                        'message' => ' color is register',
                    ],
                    'status' => 'success',
                    'info' => $user
                ]);
            }
        } else {
            return "Id not found";
        }
    }
1masoud
1masoud
@masoudproton

تخصص: php,laravel

@khanzadimahdi اگه میشه این رو تغییرشو بهم بگید

علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

تیکه کدی که آقای خانزادی گفتن توی کدت قرار بده دیگه.

public function colors_edit1(Request $request,$id,$form_id)
    {
        $valiDate = $this->validate($request, [
            'admin_id'=>'',
            'form_id' => 'min:0|max:7',
            'color_scheme' => 'min:0|max:7',
            'page_color' => '',
            'page_image' => 'min:0|max:7',
            'form_color' => 'min:0|max:7',
            'font_color' => 'min:0|max:7',
            'input_background' => 'min:0|max:7',
        ]);
        $user= ColorsModel::where('form_id',$form_id)->first();
        if ($user->admin_id == auth()->user()->id && $user->form_id == $form_id) {
            $user->admin_id=auth()->user()->id;
            $user->form_id = $valiDate['form_id'];
            $user->color_scheme = $valiDate['color_scheme'];
            $user->page_color = $valiDate['page_color'];
            $user->page_image = $valiDate['page_image'];
            $user->form_color = $valiDate['form_color'];
            $user->font_color = $valiDate['font_color'];
            $user->input_background = $valiDate['input_background'];
            if ($user->update()) {
                return response([
                    'data' => [
                        'message' => ' color is register',
                    ],
                    'status' => 'success',
                    'info' => $user
                ]);
            }
        } else {
            return "Id not found";
        }
    }
mahdi khanzadi
mahdi khanzadi
@khanzadimahdi

تخصص: Software engineer

درون کدتون به جای متد update باید از save استفاده کنید. منظورم داخل if هست.

            if ($user->save()) {
                return response([
                    'data' => [
                        'message' => ' color is register',
                    ],
                    'status' => 'success',
                    'info' => $user
                ]);
            }
1masoud
1masoud
@masoudproton

تخصص: php,laravel

@khanzadimahdi
میشه به این سوال جواب بدید من متوجه نشدم با مثال بگید
https://roocket.ir/discuss/%DB%8C%DA%A9-%D8%B3%D9%88%D8%A7%D9%84

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

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