Redirect po zobrazení flashMessage

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Draffix
Člen | 146
+
0
-

Zdravím ještě jednou, právě jsem narazil na problém, se kterým ani za nic nemůžu pohnout. Potřeboval bych po ajaxovém požadavku jednoduše vypsat flash zprávu. Prošel jsem si videa, tutoriály ale pořád to samé – ajax se nevykoná a místo toho mě to redirektuje, což nechci. Můj kod (používám bootstrap):

Vypsaní zprávy:

{snippet flashMessages}
{foreach $flashes as $flash}
<div class="row-fluid">
    <div class="span12 bgcolor">
        <div class="alert alert-{$flash->type}">
            <a href="#" class="close" data-dismiss="alert">×</a>
            {$flash->message}
        </div>
    </div><!--/span-->
</div><!--/row-->
{/foreach}
{/snippet}

Presenter:

public function editDeliveryPaymentFormSubmitted(UI\Form $form) {
    $values = $form->getValues();
    $this->order->updateDeliveryPayment($this->getParameter('id'), $values->delivery_delivery_id, $values->payment_payment_id);
    $this->flashMessage('Služba byla změněna', 'success');
    if (!$this->isAjax())
        $this->redirect('this');
    else {
        $this->invalidateControl('products');
    }
}

BasePresenter:

public function beforeRender() {
    $this->setLayout('layoutAdmin');

    if ($this->isAjax()) {
        $this->invalidateControl('flashMessages');
    }
}
davidm
Člen | 81
+
0
-

Tak se ti ten pozadavek neposila ajaxove. Mas spravne nalinkovany nette.ajax.js? Ma formular class ajax?

Draffix
Člen | 146
+
0
-

Zapomněl jsem dodat, když tam tu flash zprávu nemám, tak to ajaxově jede bez problémů. Takže v nalinkování problém nebude.