Mysql
 sql >> Base de données >  >> RDS >> Mysql

Mise à jour/modification de Laravel à l'aide de la boucle foreach

À partir de la discussion en ligne, vous avez découvert que vous souhaitiez mettre à jour plusieurs scores, qui sont répertoriés dans tr, td. Vous pouvez le changer comme ceci

Changer de vue

@foreach($scores as $score) 
    <tr> 
        <td>{{$score->lead->student_name}} <input type="hidden" name="scores[{{$loop->index}}][id]" value="{{$score->id}}"></td> 
        <td><input type="text" name="scores[{{$loop->index}}][jan_ap]" value="{{$score->jan_ap}}"></td> 
        <td><input type="text" name="scores[{{$loop->index}}][jan_hm]" value="{{$score->jan_hm}}"></td> 
    </tr> 
@endforeach 

Score de mise à jour du contrôleur

public function update_score(Request $request) 
{ 
    $scores = $request->input('scores');  //here scores is the input array param 

    foreach($scores as $row){
        $score = Score::find($row['id']); 
        $score->jan_ap = $row['jan_ap']; 
        $score->jan_hm = $row['jan_hm']; 
        $score->save(); 
    }
}