2017-11-24 13 views
-1

更新しようとしているIDの配列があります。しかし、私が更新しようとすると、メソッドの保存が存在しないというエラーが出ます。なぜ起きているのですか?私の構文は間違っていますか?複数の更新を行う - Laravel

public function update(Request $request) 
    { 
     $ids = $request->ids; 
     if(request()->ajax()) { 

     $emps = DB::table("employees")->whereIn('id',explode(",",$ids));  

      $emps->status = 0; 

      $emps->save(); 

      return redirect('admin/all')->with('status',' Successfully updated!'); 



    } 
    } 

答えて

1

$ empsはリストの従業員です。 $ emps-> status = 0はエラーです。 あなたはこのコード

foreach($emps as $emp) { 
    $emp->status = 0; 
    $emp->save(); 
} 

OR それは私のための仕事です$ emps->ステータス= 0の使用を使用したい場合。

public function update(Request $request) 
{ 
    $ids = $request->ids; 
    if(request()->ajax()) { 

    $emps = DB::table("employees")->whereIn('id',explode(",",$ids))->update(['status' => 0]);  
    return redirect('admin/all')->with('status',' Successfully updated!'); 



} 
} 
+0

それが機能するようになりましたが、戻り値のリダイレクトが動作しない...なぜ –

+0

は 'リターンリダイレクト(ルート(「あなたのルート」)、201)を使用することで' – vdeshan