neplatne spracovanie signalu z formu
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- japlavaren
- Člen | 404
Dobry vecer,
mam komponentu v ktorej vytvaram form, bohuzial nefunguje spracovanie formularu po odoslani. hadze to The signal receiver component ‚search-Search‘ is not found a neviem prist na to preco :(
BasePresenter – definicia komponenty
<?php
function createComponentSearch($name)
{
$search = new Search($this, $name);
return $search;
}
?>
Search – komponenta
<?php
class Search extends NControl
{
public $defaults = array();
function render()
{
$form = new NAppForm($this, __CLASS__);
$form->onSubmit[] = array($this, "SearchSubmitted");
$this->template->form = $form;
$this->template->setFile(dirname(__FILE__) . '/template.latte');
$this->template->render();
}
function SearchSubmitted(NAppForm $form)
{
Ndebug->dump($form->getValues());
}
}
?>
dakujem moc
- kravčo
- Člen | 721
potrebuješ továrničku aj v komponente (na formulár):
BasePresenter.php
class SomePresenter
{
public function createComponentSearch()
{
return new Search;
}
}
SearchControl.php
class Search
{
public function createComponentSearch()
{
$form = new NAppForm;
$form->onSubmit[] = callback($this, 'searchSubmitted');
return $form;
}
public function render()
{
$this->template->setFile(dirname(__FILE__) . '/template.latte');
$this->template->render();
}
}
V templejte controlu form vyrenderuješ pomocou
{control search}
, nepotrebuješ formulár pridávať do
templejty…