Generování relativního odkazu v šabloně bez presenteru

před 5 měsíci

medunrad
Člen | 27
+
0
-

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 :-)

před 5 měsíci

CZechBoY
Člen | 3360
+
+1
-

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?

Editoval CZechBoY (17. 1. 16:06)

před 5 měsíci

medunrad
Člen | 27
+
0
-

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?

před 5 měsíci

medunrad
Člen | 27
+
0
-

CZechBoY napsal(a):

https://phpfashion.com/…lech-a-nette

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.

před 5 měsíci

Phalanx
Člen | 284
+
+1
-

@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/2.4/urls (možná by to šlo navěsit i na latte makro)

Editoval Phalanx (17. 1. 19:45)

před 5 měsíci

medunrad
Člen | 27
+
0
-

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/2.4/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. 8:05)

před 5 měsíci

CZechBoY
Člen | 3360
+
0
-

Tak cache můžeš přesunout z šablony do modelový vrstvy, ne?