Prvni aplikace od vyvojaru na strankach nette

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

Ahoj, muzete mi nekdo poradit jak se pise ta prvni aplikace kdyz uz vlastne na prvnim slajdu sem skoncil? jelikoz tam je nejkde chyba a konec proste. Undefined variable: list a dal se nepohnu.
Sem nastvanej, unavenej a jeste tohle… takhle se nette vzivote nejde naucit kdyz ani prvni aplikace od vyvojaru nefunguje v navodu pro blbce..

Šaman
Člen | 2666
+
0
-

Napiš kde ti to vyhazuje chybu. (Postni sem ten kus kódu a výjimku.)
Na prvním slajdu je stažení Sandboxu, ten mi funguje. Podle mě bude chyba někde v tvém kódu.

11vili11
Člen | 14
+
0
-

Notice

Undefined variable: list search►

Source file ▼

File: …\temp\cache\_Nette.FileTemplate\_templates._layout.latte-0529a3e2cb6acfd1484614aa402bd87e.php Line: 85

75: </div>
76: </div>
77:
78: <div id=„container“>
79: <div id=„sidebar“>
80: <h2><a href=„<?php echo htmlSpecialChars($_control->link("Homepage:“)) ?>„>Přehled</a></h2>
81:
82: <div class="task-lists“>
83: <h2>Seznamy</h2>
84: <ul>
85: <?php $iterations = 0; foreach ($list as $list): ?> <li><a href=„<?php echo htmlSpecialChars($_control->link("Task:“, array($list->id))) ?>
86: "><?php echo Nette\Templating\Helpers::escapeHtml($list->title, ENT_NOQUOTES) ?></a></li>
87: <?php $iterations++; endforeach ?>
88: </ul>
89: </div>
Call stack ▼

…\libs\Nette\Utils\LimitedScope.php:73 source ► include (arguments ►)

…\libs\Nette\Templating\FileTemplate.php:119 source ► Nette\Utils\LimitedScope:: load (arguments ►)

…\temp\cache\_Nette.FileTemplate\_Homepage.default.latte-45878533c752c5e11d11370a0ce2d2fe.php:59 source ► Nette\Templating\FileTemplate-> render ()

…\libs\Nette\Utils\LimitedScope.php:73 source ► include (arguments ►)

…\libs\Nette\Templating\FileTemplate.php:119 source ► Nette\Utils\LimitedScope:: load (arguments ►)

…\libs\Nette\Application\Responses\TextResponse.php:59 source ► Nette\Templating\FileTemplate-> render ()

…\libs\Nette\Application\Application.php:142 source ► Nette\Application\Responses\TextResponse-> send (arguments ►)

…\www\index.php:10 source ► Nette\Application\Application-> run ()

Variables ►

Nette Application ►

Environment ►

11vili11
Člen | 14
+
0
-

<li n:foreach=„$list as $list“><a n:href=„Task: $list->id“>{$list->title}</a></li>

a tohle by to melo hazet tu chybu..

Majkl578
Moderator | 1364
+
0
-

Mohl bys odkázat na stránku dokumentace, kde se ona chyba vyskytuje?
Pokud se jedná o Presentery a šablony, uvedená chyba se tam nevyskytuje, nejspíš jsi špatně něco opsal (několikrát je tam <li n:foreach="$lists as $list">, nikoliv $list as $list).

11vili11
Člen | 14
+
0
-

tohle byly uz jen me pokusy neco najit. A je to presne ta stranka co si napsal. A vse sem kopiroval abcy hprave neudelal preklep. Asi je to ve me

Michal Vyšinský
Člen | 608
+
0
-

Viz https://doc.nette.org/cs/quickstart#…
Máš v BasePresenteru určitě ten kód? Tam se plní do šablony proměnná $lists.

public function beforeRender()
{
    $this->template->lists = $this->listRepository->findAll()->order('title ASC');
}
Patrik Votoček
Člen | 2221
+
0
-

imho evidentně jsi tam ten překlep udělal protože v dokumentaci je $lists as $list a né $list as $list.

Majkl578
Moderator | 1364
+
0
-

Myslím, že je zcela evidentní kde a na čí straně je chyba. Jelikož v dokumentaci je to správně a ve tvé zkompilované šabloně je to špatně (foreach ($list as $list):), zcela jistě nastala chyba při/po kopírování. :)

11vili11
Člen | 14
+
0
-

fakt diky za rady, mam tam vse co jste tady napsaly a to SSSSSSS sem tam mel predtim taky.

mkoubik
Člen | 728
+
0
-

Možná blbě koukám, už jsem unavenej, ale v dokumentaci je v presenteru

public function renderDefault()
{
    $this->template->list = $this->list;
    $this->template->tasks = $this->listRepository->tasksOf($this->list);
}

což je samozřejmě blbě, má tam být $this->template->lists = ....