Regulární výrazy určující, zda jde o Presenter nebo Action
- kleinpeter
- Člen | 7
Mám asi začátečnický dotaz, ale nevím, jak přesně by mohlo Nette:
určit, zda chci načítat stránku nebo jestli jde už o action.
Příklad:
chci mít strukturu URL
domena/cz/moje-stranka/podstranka/neomezena-podstranka/udelej:uloz/id:12/
A ptám se, zda lze nějak udělat, abych mohl mít libovolný počet
„stránek“ v URL a za ním libovolný počet action. Tedy třeba
i domena/stranka/udelej:vymaz/. S tím, že ta stránka může být v jedné
proměnné (nemusí být každé lomítko jako jedna proměnná, ale $stranka
bude přimo „cz/moje-stranka/podstranka/neomezena-podstranka“)
, action potom klasicky.
Asi bych to řešil přes regulární výrazy s podmínkou, zda ten jeden blok mezi lomítky obsahuje dvojtečku, ale nevím, jak na to a zda to vubec bude fungovat.
Díky za každou radu :)
- nAS
- Člen | 277
:) Super, tak k tvému dotazu: buď si můžeš pohrát se stávajícím
routerem, nebo si můžeš napsat svůj. Není to obtížné, stačí
implementovat rozhraní IRouter
, které má akorát dvě metody na
převedení HTTP požadavku na PresenterRequest a naopak. A v něm už si
můžeš udělat jakoukoliv logiku, třeba právě ony reguláry.