flashmessage v komponente / controle
- awsickness
- Člen | 98
zdravim prave jsem prenesl jeden projekt na mac os x a pokud mam nekde pouzito v controlu
$this->flashMessage("error");
napriklad tak pri nacitani stranky mi se mi hodi hlaska ze headers jiz byli
poslany…
tak bych se rad zeptal zda je tohle normalni chovani zda v controle nemuzu
pouzivat flashmessage nebo jsem nekde neco prehlednul.
Editoval awsickness (14. 10. 2011 22:17)
- Filip Procházka
- Moderator | 4668
Pokud se během vykreslování šablony snažíš poslat flashMessage, tak ti to logicky nemůže fungovat, protože ty využívají Ssssion, které jdou zapisovat, jenom před odesláním výstupu.
- awsickness
- Člen | 98
takze pokud mam neco jako
{control form}
a v te controle mam callback na odeslani formulare a vnem nastavuji flash kdyz se neco nepovede tak to nejde ?
nebo je na to nejaky postup jak tohle udelat
public function editFormSubmitted(Form $form) {
$this->flashMessage($message);
$this->redirect($target, $params);
}
neco takoveho delam pri odeslani formulare
- Filip Procházka
- Moderator | 4668
Vidím to spíš na problém v připojování komponent. Nemáš nějak zprzněno vytváření těch komponent? Nemáš to v render, nebo tak?
- awsickness
- Člen | 98
tak radsi postnu trosku vice kodu
{block content}
{control editForm}
{/block}
c presenteru mam
protected function createComponentEditForm() {
return new \EditControl(self::ENTITY);
}
v controle mam
protected function createComponentEditForm() {
$form = new Form().....
$form->onSuccess[] = callback($this, "editFormSubmitted");
}
a v te editForm .. mam kontrolu a pokud neprojde chci nastavit flash a redirect.
mozna jsem neco nepochytil jak se delaji controly ale pro me je to zahada ze to hazi tuto chybu.