Jak Začít?

Máš v počítači zápisky z přednášek
nebo jiné materiály ze školy?

Nahraj je na studentino.cz a získej
4 Kč za každý materiál
a 50 Kč za registraci!




Zend Framework

PDF
Stáhnout kompletní materiál zdarma (869.27 kB)

Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.

– v preDispatch() můžeme například akci přeskočit pomocí _forward() 

pokud nejsme přihlášeni

 Automatická injekce view se stejným názvem jako 

je action. View je dostupné pod $this->view

Controller

Controlle - View

Vie

 View je zavolána po volání metody render

– string render(string $action = null,

string $name = null,
bool $noController = false);

– pokud neřekneme jinak, je voláno view daného kontroleru a dané 

akce

 Mapování:

 Mapování

views/scripts/[controller]/[action].phtml

– pozor: znaky . a _ jsou převedeny na znak –

Controller

Controlle – forward

forwar a 

a redirect

redirec

 Metody pro předání na jinou action

 _forward předá v rámci řetězce dispatch

 _redirect odešle hlavičku s kódem typicky 302

Response objekt

Response objek

 normálně ho nemusíme používat

 controller do něj zapisuje

 my můžeme využívat např. metod

– setHeader, setRedirect, getHeaders, cleanHeaders ,(

Zend

Zen _Form

For

 Objektová podpora pro tvorbu formulářů

 Formulář je reprezentován objektem, který dědí z 

třídy Zend_Form 

 Každá formulářová položka má svojí třídu

– Zend_Form_Element_Text,
– Zend_Form_Element_Textarea

– Zend_Form_Element_Textare
– Zend_Form_Element_...

 Položky mají API odpovídající jejich funkčnosti

class Forms_Address extends Zend_Form {

public function init() {

$this->setMethod('post');

$nameElement = new Zend_Form_Element_Text("jmeno");

$nameElement->setLabel('jmeno');
$nameElement->setValue('jmeno');

$this->addElement($nameElement);

}

}

Kontroler

Kontrole využívá formulář

využívá formulá

 AddressController, newAction

public function newAction() {

$request = $this->getRequest();
$form = new Forms_Address();

// prirazeni vlastnosti k view
$this->view->form = $form;

if ($request->isPost()) {

if ($form->isValid($request->getPost())) {

// udelame něco s daty a podekujeme

return $this->_helper->redirector('thankyou');

}

}

}

Zavolá akci 
thankyou

View

Vie

 V nejjednodušším případě necháme formulář 

Témata, do kterých materiál patří