Generování relativního odkazu v šabloně bez presenteru
- medunrad
- Člen | 27
Ahoj,
je nějakým způsobem možné generovat relativní url v šabloně, která nemá svůj presenter?
Něco jako:
{link :Presenter:action}
Zatím se mi nepodařilo přijít na žádný použitelný způsob.
Při pokusu o výše zmíněné dostávám Presenter name must be alphanumeric string,
díky :-)
- medunrad
- Člen | 27
CZechBoY napsal(a):
Zkus {plink}
ale spíš si myslim že budeš muset předat presenter do šablony.
Jak ji vůbec vytváříš nebo co to je vlastně za šablonu?
Dky za radu, ale {plink} se chová úplně stejně.
Šablonu si vytvářím pomocí \Nette\Application\UI\ITemplateFactory, který předhodím cestu k latte souboru.
$template = $this->templateFactory->createTemplate();
$template->setFile($templateFile);
Předat presenter do šablony? Můžeš to prosím rozvést?
- medunrad
- Člen | 27
CZechBoY napsal(a):
Jestli narážíš na
$latte->addProvider('uiControl', $this->linkGenerator);
tak bohužel, to nefunguje. Resp. umí generovat absolutní odkazy, nicméně i jak je v ukázce uvedené, neumí to generovat relativní url.
- Phalanx
- Člen | 310
@medunrad Proč tam nechceš celou URL? Ptám se, protože mě
zajímá, při které situaci tohle může nastat.
Jinak v nejhorším můžeš URL rozsekat za pomocí https://doc.nette.org/cs/http/urls
(možná by to šlo navěsit i na latte makro)
Editoval Phalanx (17. 1. 2019 19:45)
- medunrad
- Člen | 27
Phalanx napsal(a):
@medunrad Proč tam nechceš celou URL? Ptám se, protože mě zajímá, při které situaci tohle může nastat.
Jinak v nejhorším můžeš URL rozsekat za pomocí https://doc.nette.org/cs/http/urls (možná by to šlo navěsit i na latte makro)
Mám několik tvarů domény např. m.doména.cz a doména.cz. Takhle to je pro několik jazykových mutací a já bych chtěl vždy generovat odkaz na doména.cz (resp. jazyková mutace), tzn. nikdy na to m.doména.cz
Díky za tip na Url, nicméně to použít nemohu, protože kvůli cachování mám daná id, která potřebuju ke složení odkazu, k dispozici až v šabloně.
Ještě mě napadlo to řešit např. filtrem, nicméně při určování správné domény musím přistupovat do db a tyto url vypisuju do feedu, kde je spoustu položek, bylo by to tedy dost pomalé a neefetivní.
Editoval medunrad (18. 1. 2019 8:05)