Redirect zurück in die Flasche
Ich habe eine DB-Tabelle namens Artikel. Artikel hat eine status
- Attribut, das kann entweder von
new
todo
doing
done
Auf meiner website habe ich zwei Ansichten, Tabellen-Element.
- Ansicht 1 zeigt alle Elemente (status-Spalte).
- View 2 nur zeigt Objekte mit dem status
todo
.
Je nach status, es gibt bestimmte Aktionen, die der Benutzer ausführen kann ("move to todo", "wechseln zu tun", "verschieben in erledigt").
Wenn man bedenkt, Ansicht 1 und Ansicht 2 haben Sie beide gemeinsam, dass Sie Teile enthalten, die mit dem status todo
. So auf beiden habe ich ein Button mit Verlinkung zu einer URL namens
/Item/<id>/moveToDoing
dem id - Element der status auf "tun".
Nun möchte ich dem Benutzer umgeleitet werden, zurück, wo er klickte auf den button (Ansicht 1 oder Ansicht 2).
Meine Fragen sind:
- Wie dies mit den Kolben? Ich fühle mich
http://flask.pocoo.org/snippets/62/ ist nicht ganz das, was ich brauche,
denn ich habe keine POST-Anfrage mit einem formular hier. (sollte ich?) - Mache ich das das der richtige Weg oder gibt es eine Konvention, wie normalerweise lösen?
- Nicht für deine Frage, aber warum nicht entwerfen Sie Ihre url
/item/<id>/moveto/<status>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich bin mit der helper-Funktion, die hier empfohlen: http://flask.pocoo.org/docs/reqcontext/
Verwenden Sie es in der Ansicht
Ohne Parameter leitet den Benutzer zurück, wo er herkam (
request.referrer
).Sie können die get-parameter
next
um eine url angeben. Dies ist nützlich für die oauth zum Beispiel.Habe ich auch noch eine Standard-Ansicht angezeigt, wenn es sollte keine referrer für einige Grund
redirect_url('.another_view')
Dem snippet, das Sie verknüpft im Grunde das gleiche tut, aber mehr Sicherheit, indem sichergestellt wird, dass Sie nicht umgeleitet, um einem Angreifer die Seite auf einem anderen host.
request.referrer
ist, was ich brauchte für eine einfache Back-button/link, danke!