Autor Zpráva
andy_99
Profil
Ahoj riešim jednoduché vyhľadávanie za pomoci nette.. Mám teda nejakú základnú šablónu (menu a obsah). Obsah sa vždy mení podla tohto co sme vybrali v menu . To problém spraviť nebol. Ide mi o to ako spraviť jednoduchý formulár pre vyhľadávanie pod menu..Aby tento fomulár bol vždy viditeľný nech človek vyberie čokoľvek z menu.. vedeli by ste mi nejak poradiť? samozrejme či vôbec existuje spôsob ako za pomoci presenterov a prislušných šablón to vôbec spraviť?
Jan Tvrdík
Profil
andy_99:
Kde je problém? Vykreslení formuláře dáš do layoutu a továrničku do BasePresenter.
andy_99
Profil
mohol by si mi to prosím podrobnejšie vysvetliť alebo poslať link ako by ten basePresenter mal vyzerať? Pretože ak si vytváram nejakú novu komponentu a potom ju volám v @layout.latte tak stále mi ladenka vypisuje :

Nette\InvalidArgumentException
Component with name 'postform' does not exist

Pravdepodobne robím niekde chybu a neuvedomujem si to..
Jan Tvrdík
Profil
andy_99:
Už jsi přečetl doc.nette.org/cs/2.2/presenters a doc.nette.org/cs/2.2/components?
andy_99
Profil
ano Samozrejme.

basePresenter.php:

<?php

namespace App\Presenters;


use Nette,
    App\Model;
use Nette\Application\UI\Form;

/**
 * Base presenter for all application presenters.
 */
    abstract class BasePresenter extends Nette\Application\UI\Presenter {
    
        protected function createComponentPostForm() {
        $form = new UI\Form;;
            $form->addSubmit('search', 'Vyhladať');
            $form->onSuccess[] = array($this, 'PostFormSubmitted');
            return $form;
        }

@layout.latte:

                    {control postForm}

jednoducho ak to použijem tento kód hocikde inde povedzme v nejakom inom presenteri a do príslušnej šablóny dám {control postForm} tak to funguje.. ale ak je to v obycajnom @layout.latte tak to nefachčí.. fakt neviem kde je problem


Vždy to rozchodím len vtedy ak napr HomepagePresenter extends basePresenter... a ak tie linky v menu previažem na nejaký iný presenter tiež ten presenter musí mat extends HomepagePresenter.. Nie som si 100% istý či to tak je správne
Jan Tvrdík
Profil
andy_99:
tiež ten presenter musí mat extends HomepagePresenter
Od HomepagePresenter by nikdo dědit neměl, všechny presentery by měly dědit od BasePresenteru.
andy_99
Profil
to už som zistil. každopádne veľmi ďakujem za pomoc:)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: