Chyba při odesílání formuláře

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

Zdravím,
nevím co dělám špatně, ale vytvořil jsem si formulář, který po odeslání vyvolá laděnku.

Formulář vytvářím jako komponentu v presenteru takto:

<?php
   protected function createComponentPostForm()
    {
        $form = new Nette\Application\UI\Form;
        $form->addText('jmeno', 'Jméno');

        $form->addSubmit('odeslat', 'Přidat účastníka');
        $form->onValidate = callback($this, 'postFormSended');
        return $form;
    }
?>

Nejzáhadnější je ale zpráva laděnky:
Nette\MemberAccessException
Call to undefined method UcastnikPresenter::__invoke()

PHP 5.3.2
Apache/2.2.15 (Win32) PHP/5.3.2
Nette Framework 2.0-beta (revision 6195792 released on 2011–05–30)

22
Člen | 1478
+
0
-

a kde máš tu metodu, co voláš v tom callbacku? jinak pouzij onSuccess[] místo onValidate[]

Aurielle
Člen | 1281
+
0
-

Vypadá to na chybějící [] u onValidate, resp. jak ti radí @22 u onSuccess.

Fandik
Člen | 19
+
0
-

Laděnka vrací následující chybu: Nette\MemberAccessException; Cannot read an undeclared property Nette\Application\UI\Form::$onSuccess.

Claudie1
Člen | 21
+
0
-

A máš tam ty závorky?

Fandik
Člen | 19
+
0
-

Hranatý závorky tam mám.

Claudie1
Člen | 21
+
0
-

divný… podle dokumentace i podle toho, co používám já, by to mělo fungovet… přepodkládám, že cache jsi taky zkusil promazat

Editoval Claudie1 (30. 6. 2011 19:14)

Mikulas Dite
Člen | 756
+
0
-

Možná máš staré nette, kde je to ještě onSubmit. Ale měnilo se to už 12. 5., takže moc nesedí to číslo z prvního postu. https://github.com/…b193e2e070f8

Fandik
Člen | 19
+
0
-

Tak problém vyřešen. Bylo to opravdu tím, že se jednalo o verzi Nette, kde ještě nebyla udělaná změna ve třídě Form. Stáhl jsem si Nette z Githubu a vyměnil je v sandboxu a vše funguje. Všem díky za pomoc.