Heim > Fragen und Antworten > Hauptteil
Ich habe versucht, eine bearbeitbare Rolle in der Benutzertabelle zu erstellen, aber ich habe eine Fehlermeldung erhalten und die Daten wurden nicht in der Datenbank aktualisiert
Hier ist der Fehler
Das ist meine Klinge
<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>
Das ist meine Controller-Route
Route::post('tabledit/action', 'App\Http\Controllers\EventController@action')->name('tabledit.action');
Das ist meine Funktion in 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); } }
Das ist meine Meinung
Kann mir jemand helfen
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); } }