首頁  >  問答  >  主體

錯誤。我如何在 laravel 中使用 ajax 更新和刪除實時表

我嘗試在使用者表中建立可編輯角色,但出現錯誤並且未將資料更新到資料庫

這裡是錯誤

這是我的刀片

<div class="table-responsive">
        @csrf
        <table id="editable" class="table table-bordered table-striped">
          <thead>
            <tr>
              <th>ID</th>
              <th>First Name</th>
              <th>Email</th>
              <th>Role</th>
            </tr>
          </thead>
          <tbody>
            @foreach($allusers as $row)
            <tr>
              <td>{{ $row->id }}</td>
              <td>{{ $row->name }}</td>
              <td>{{ $row->email }}</td>
              <td>{{ $row->role }}</td>
            </tr>
            @endforeach
          </tbody>
        </table>
      </div>

這是我的控制器路線

Route::post('tabledit/action', 'App\Http\Controllers\EventController@action')->name('tabledit.action');

這是我在 EventController 中的函數

function action(Request $request)
{
    if($request->ajax())
    {
        if($request->action == 'edit')
        {
      $data = $request->role;
      $updaterole = DB::table('users')
                ->where('id', $request->id)
        ->first();

        $updaterole = $data;
        $update->update();

        }

        if($request->action == 'delete')
        {
            DB::table('users')
                ->where('id', $request->id)
                ->delete();
        }
        return response()->json($request);
    }
}

這是我的觀點

有人可以幫我嗎

P粉805931281P粉805931281260 天前385

全部回覆(1)我來回復

  • P粉953231781

    P粉9532317812024-02-26 10:05:41

    最好使用 if request has 而不是 request action。

    if($request->has('edit')
    {
    //
    }

    但我沒有改變它。僅編輯了更新部分。

    function action(Request $request)
        {
            if($request->ajax())
            {
                if($request->action == 'edit')
                {
              $data = $request->role;
              DB::table('users')->where('id', $request->id)->update(['role' => $data]);
                }
        
                if($request->action == 'delete')
                {
                    DB::table('users')->where('id', $request->id)->delete();
                }
                return response()->json($request);
            }
        }

    回覆
    0
  • 取消回覆