Problém pri routovani ak link obsahuje #cast_stranky

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

Dobrý deň rád by som zmenil časť routy, potrebujem proste pridať na koniec adresy #foto aby to odscrolovalo pri načítaní na konkrétnu čast napr. v kóde bude <a name=„foto“></a> je potrebný nejaký špeciálný zápis alebo to mám správne a chyba bude niekde inde ?

povodny záznam :
$router[] = new Route('fotogalerie-foto[-<id>][-<Znacka>].html', 'Homepage:galeriaFotka');
generuje odkaz v tvare "fotogalerie-foto-455-samsung.html"

takto by som to potreboval :
$router[] = new Route('fotogalerie-foto[-<id>][-<Znacka>].html#foto', 'Homepage:galeriaFotka');
generuje odkaz v tvare "fotogalerie-foto-455-samsung.html#foto" ale skonči chybou No route for HTTP request
nettolog
Člen | 68
+
+1
-

Problém bude spíš jinde, protože kotvy (#) nejsou součástí HTTP požadavku, ale řeší si je sám prohlížeč tím, že na kotvu „skočí“. PHP by kotvu vůbec vidět nemělo.

Když máš routu bez # a do latte dáš natvrdo <a name="neco"></a>, tak to taky skončí chybou? Nebo generuješ odkaz přes plink?

peterx4
Člen | 8
+
0
-

Odkazujem pomocou <a n:href=‚galeriaFotka,$Znacka,$id‘>

a v latte mam tento kód a problémy nerobí <a name=„foto“></a>
problém robí len ta routa

jiri.pudil
Nette Blogger | 1032
+
+4
-

Na routu vůbec nesahej, jen přidej tu kotvu do odkazu:

<a n:href="galeriaFotka#foto id => $id"></a>
nettolog
Člen | 68
+
0
-

Routu vůbec neřeš a nedávej do ni kotvu.

Pokud jde o stejný presenter a view, tak by mělo fungovat: <a href="{plink this, id => $id, Znacka => $znacka}#kotva"></a> (teoreticky i <a href="#kotva">), případně <a href="{plink Homepage:galeriaFotka, id => $id, Znacka => $znacka}#kotva"></a>.

Editoval nettolog (2. 8. 2015 15:19)

peterx4
Člen | 8
+
0
-

Ďakujem za váš čas toto mi pomohlo :

<a href="{plink this, id => $id,  Znacka => $znacka}#kotva"></a>
peterx4
Člen | 8
+
0
-

<a n:href=„galeriaFotka#foto id ⇒ $id“></a>

Aj toto riešenie mi funguje taktiež vďaka.