2017-06-20 2 views
0

Hier, was ich will ist, wenn ich delete drücken Taste erforderlich rohe müssen gelöscht werden.Das bedeutet relevante trainee_id und seine Details müssen gelöscht werden.Laravel CRUD Delete Funktion Fehler

enter image description here Hier ist der Controller, den ich dafür verwende.

public function admin_destroy($trainee_id) 
{ 
    registerdetails::where('trainee_id','=',$trainee_id)->first()->destroy(); 
} 

Hier ist die Route.

Route::get('Delete/{trainee_id?}', '[email protected]_destroy') 
     ->where('trainee_id', '(.*)');;` 

Hier ist die Ansicht Schaltfläche zum Löschen.

<td> 
    <a class="btn btn-danger" href="Delete/{{ $item->trainee_id }}">Delete</a> 
</td> 

Hier ist die URL um zu bekommen, wenn ich die Löschtaste drücke.

http://127.0.0.1:8000/Delete/MOB/TR/1739

Schließlich dies der Fehler i`m bekommen.

enter image description here

Kann mir jemand vorschlagen, diesen Fehler zu beheben.

+0

löschen verwenden zerstören passieren Sie senden 3 Parameter url sollte es sein nur eine wie Sie in Route 'http: //127.0.0.1: 8000/Löschen/MOB/TR/1739' –

+0

Was ist Zeile 196 von UserRe gisterController? Außerdem enthalten Ihre IDs Schrägstriche, die in der URL problematisch sein werden. Sie müssen diese korrekt behandeln. –

+0

Sie müssen drei Parameter an die URL senden Oder ändern Sie 'href =" Löschen/{{$ item-> trainee_id}} "" auf 'href =" Löschen/MOB/TR/{{$ item-> trainee_id}} "' in einem 'tag'! –

Antwort

2
public function admin_destroy($trainee_id) 
    { 
     registerdetails::destroy($trainee_id)->first(); 
    } 

Verwendung dieses

1

die destroy() Funktion einen Parameter benötigt (entweder ein eine einzelne ID oder ein Array von IDs oder IDs, die durch ein Komma getrennt sind) nach b e geben als

App\registerdetails::destroy(1); 

App\registerdetails::destroy([1, 2, 3]); 

App\registerdetails::destroy(1, 2, 3); 

entweder die id auf die ähnliche

registerdetails::destroy($trainee_id); 

oder delete() Methode als

registerdetails::where('trainee_id','=',$trainee_id)->delete();