Samostatné Forms, bez zbytku Nette – vyprázdnění formuláře po odeslání
- toka
- Člen | 253
Zdravím,
odesílám formulář následujícím způsobem. Používám z Nette jenom
Forms, takže žádné presentery, ani šablony. Nemůžu však docílit toho,
aby se po odeslání smazal vyplněný obsah formuláře, ani přes
setDefaults($default, TRUE)
, nebo to dělám špatně. Proto
prosím o radu.
<?php
if($form_contact->isSubmitted()) {
if($form_contact->isValid()) {
$values = $form_contact->getValues();
...
}
}
?>
Děkuji
Editoval toka (3. 1. 2010 20:15)
- toka
- Člen | 253
Ondřej Mirtes napsal(a):
Říká se tomu Post/Redirect/Get pattern.
S tím nemám problém, a vím to :-) Spíš mi šlo o to, jak lze použít
redirect
, když nemůžu udělat $this->redirect()
,
protože se nejedná o aplikaci MVC, ale pouze o využití Forms. Dá se
třeba zavolat ten redirect()
nějak staticky? Resp. jinak, jde to
pomocí Nette, nebo to je na programátorovi, aby se o to postaral?
Děkuji.
- Ondřej Mirtes
- Člen | 1536
To je na tobě a tvojí aplikaci. Můžeš si klidně zavolat
header('Location: ' . $_SERVER['PHP_SELF']); exit;
.
- Ondřej Mirtes
- Člen | 1536
Kdybys využíval Application a MVC, na které je
$this->redirect()
dost navázané, tak není problém no :)
- toka
- Člen | 253
Ondřej Mirtes napsal(a):
Kdybys využíval Application a MVC, na které je
$this->redirect()
dost navázané, tak není problém no :)
Teď už vím, že i když nepoužívám Application a MVC, ale pouze
samostatně, mohu přesměrování provádět pomocí
Environment::getHttpResponse()->redirect('...');
. To Nette je
prostě úžasné! :-)