Použití šablony v komponentě TabControl

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

Ahoj, dobrý večer,

pokouším se rozchodit TabControl s vlastním generováním tabu pomocí šablony, ale moc se mi to nedaří. Zkouším všelijaké kombinace, ale nemůžu se dobrat funkčního výsledku..

Vytvoření tabu:

<?php
$t = $tc->addTab("persons");
  $t->header = "Persons";
  $t->contentFactory = array($this,"createTabPersons");
?>

Továrnička pro vytvoření tabu:

<?php
function createTabPersons($name, Tab $tab){
  $templatePersons = new Template;
  $templatePersons->setFile('persons.phtml');

  return $templatePersons->__toString();
}
?>

Když si vrátím jakýkoliv jiný string, tak se zobrazí ok, nedaří se mi přijít na to, proč se „nevygeneruje“ šablona, ve které je jen <h3> tag.

Jde mi o vytvoření vlastních tabů, kde v každém bude obsah určité šablony s daty.

Díky předem za nakopnutí ;)

Michal

Editoval blacksun (25. 9. 2009 9:35)

Honza Kuchař
Člen | 1662
+
0
-

Mno sice nevím co způsobuje tu tvoji chybu, ale když jsem copy&pastnul ten kód co jsi poslal, tak to funguje jak má.

Takže tip:

  • Máš správně callback k té továrničce? (je opravdu metodou objektu $this)
  • Máš správně cestu k souboru šablony?

Přidal jsem příklad na generování tabu ze šablony.

blacksun
Člen | 177
+
0
-

Problém bude v té cestě, dostanu se k tomu v práci, ale ten callback jsem kontroloval snad milionkrát..

Díky za reakci i upravení příkladu ;)

EDIT: Tak bylo to opravdu tou cestou, ještě jednou díky.

Editoval blacksun (29. 9. 2009 13:21)