Ich habe eine Ansicht (nennen wir sie 'foo'), die im Grunde alle Artikel eines Benutzers auflistet und eine Löschschaltfläche wie diese anzeigt:

{{ Form::open(['url' => 'contents/'.$content->id, 'method' => 'delete', 'class' => 'deleteForm']) }}
    {!! Form::submit("Deaktivieren",['class' => 'btn btn-xs btn-warning']) !!}
{{ Form::close() }}

Bearbeiten: Die Zerstörungsfunktion

public function destroy ($id){

    Content::findOrFail($id)->update(['expires' => Carbon::now(), 'active'=>false]);

    return redirect('foo');
}

Damit der Benutzer die gleiche Seite sieht. Da Laravel die Ansicht zwischenspeichert, wird die alte Ansicht (also mit dem gelöschten Objekt) angezeigt.

Ist es ein klügeres Muster, diesen Effekt zu archivieren? Ich habe über AJAX nachgedacht, bin aber mit JS nicht wirklich vertraut.

Vielen Dank für Ihre Zeit und Hilfe, Simon

0
Simon 5 Jän. 2016 im 01:53

2 Antworten

Beste Antwort

Stellen Sie sicher, dass Sie keine Artikel erhalten, bei denen die aktive Spalte falsch ist, wenn aktiv eine Spalte ist.

Und dies ist der richtige Weg, um Formulare zu öffnen
{!! Form::open(array('url' => 'foo/bar')) !!} // {!! Form::close() !!}

0
Chaudhry Waqas 4 Jän. 2016 im 23:22

Wenn Ihre Ansicht nach dem Ändern eines Objekts in dieser Ansicht dasselbe anzeigt, haben Sie nichts wirklich geändert. Überprüfen Sie, ob sich Ihre Daten nach der Änderung von denen vor der Änderung unterscheiden.

0
Simon 4 Jän. 2016 im 23:21