Persistentni parametr v komponentě

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

Dobrý den,

prosím Vás, hrozně hloupý dotaz, jde o problém, kdy mam v base presenteru deklaraci persistentniho parametru lang

<?php
/** @persistent string */
public $lang = 'cs';
?>

a nyní chci v komponentě k němu přistupovat. $this->lang neexistuje. Jak jsem pochopil, persistentní parametry se předávají v URL, jenže jej tam nemám, chyba? Nebo se pletu?

redhead
Člen | 1313
+
0
-

Říkáš, že k ní chceš přistoupit v komponentě, tím tedy asi nemyslíš žádnou třídu, která by dědila od BasePresenter, kde je $lang proměnná deklarovaná. Pokud máš komponentu připojenou k presenteru stačí $this->presenter->lang.

Dále nastavuješ výchozí hodnotu 'cs', tím pádem se v URL neobjeví, pokud nabývá této hodnoty. Pokud bude hodnota jiná, v URL se objeví.

Editoval redhead (13. 9. 2010 23:18)

Mesiah
Člen | 240
+
0
-

Děkuji za přehlednou odpověď.
Hezký den.