Generovaní odkazů s proměnnou z databáze
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Fyasko
- Člen | 106
Ahoj. Mohl by někdo navést ke správnému řešení?
Generuju odkazy v komponentě z databáze. Takže vytáhnu data a k názvu přiřadím presenter a akci, ale když přidám parametr id, vrátí se mi error:
Invalid link: No route for Admin:Homepage:default ‚test‘()
Mohl by někdo poradit jak správně do databáze zapsat ten odkaz? Pro jistotu přikládám způsob výpisu
<?php
<div class="component">
<div class="admin-navigation-title">Možnosti</div>
{foreach $section as $s}
<div class="admin-nav-title">{$s->name}</div>
<ul class="admin-nav">
{foreach $subSection as $sc}
{if $s->id == $sc->section}
<a href="{plink :Admin:$sc->url}"><li>{$sc->name}</li></a>
{/if}
{/foreach}
</ul>
{/foreach}
</div>
?>
Všem předem díky za rady :)
- vitkutny
- Člen | 73
Uložení v databázi:
- link
- id
- destination
- link_parameters
- id
- link_id
- key
- value
Použití v šabloně
<a href="{plink $link->destination (expand) $link->parameters->fetchPairs('key', 'value')}">
Osobně používám jednodušší variantu
<a n:href="$link">
<a n:href="$product->link">
<a n:href="$page->link">
a v BasePresenteru v createRequest provedu rozdělení $destination a $args (https://github.com/…resenter.php#L48)