I getting many inputs from a user in create form(>50 fields) where I would like to edit those details in edit form.
I have made all the fields nullable so that while editing, the fields are left alone,
Controller:
public function update(Request $request, $id)
    {
        $engineers = Engineers::findOrFail($id);
        $engineers->input1 = $request->input('input1');
        $engineers->input2 = $request->input('input2');
        $engineers->input3 = $request->input('input3');
        $engineers->input4 = $request->input('input4');
        $engineers->save();
    }
When I try to edit input2 leaving everything blank, all the other fields are blank in the database.
Another option I found out was
public function update(Request $request, $id)
{
    $engineers = Engineers::findOrFail($id);
    if($request->input('input1')){
        $engineers->input1 = $request->input('input1');
    }
    if($request->input('input2')){
        $engineers->input2 = $request->input('input2');
    } 
    if($request->input('input2')){
        $engineers->input2 = $request->input('input2');
    }
     if($request->input('input2')){
        $engineers->input2 = $request->input('input2');
    }
    $engineers->save();
}
By doing the above, The corresponding record changes and all the other fields are left intact.
I also noticed that empty edit form can be submitted.
Are there any other better approach to this?
via Chebli Mohamed
 
Aucun commentaire:
Enregistrer un commentaire