Beispielsweise kann ein Filterformular in Administratorbereichen am besten GET-Formulare sein. Auf diese Weise können sie mit Lesezeichen versehen werden und Filter können über Pager-Seiten hinweg verwaltet werden.
Wie kann man form_api am besten für solche Formulare verwenden? Werden die _validate-Hooks eingereicht? Kann der _submit-Hook weggelassen werden?
Beispielsweise funktionieren Filter, die Ansichten ausgesetzt sind, auf diese Weise. Der Code in Ansichten, die dies behandeln, ist jedoch kompliziert und komplex und zu komplex, um als gutes Beispiel für die Entwicklung benutzerdefinierter Schnittstellen mit einfachen Filterformularen verwendet zu werden.
Antworten:
Verwenden Sie den Parameter #method des Formulars wie folgt:
quelle
form_data
Schlüsselalways_process
undmethod
können auch in der Formulardefinition festgelegt werden, was dazu führt, dass validate + process-Hooks ausgeführt werden. Aber ich kann kein Anwendungsbeispiel dafür finden und am Ende habe ich immer nochform_state
einenmethod
Schlüssel, der auf gesetzt istpost
!Nur für den Fall, dass jemand auf diese Frage stößt, ist dies ein vollständigeres, aber sehr einfaches Beispiel :)
Sie möchten das Formular definieren
und dann können Sie es verwenden
Die letzte Zeile könnte ein Block ['Inhalt'] sein oder was auch immer Sie brauchen.
quelle
$form_state['redirect'] = false;
den Submit-Handler eingeben, um die Umleitung nach dem Senden des Formulars zu deaktivieren.