ZF parametrizált SEF URL hogyan?
Sziasztok!
Úgy döntöttem, hogy belevágok a Zend Framework megtanulásába. Sikerült is az első kanyart bevenni, a ZF jól teljesített, a tutorialon komolyabb idegeskedés nélkül túl vagyok. Adódott azonban az a remélhetőleg el nem ítélhető vágyam, hogy ilyen URL-eket gyártsak:
Namost, a doksi a következőt írja:
[quote]By default, the first segment of a URL path maps to a controller, and the second to an action. For example, given the URL http://framework.zend.com/roadmap/components, the path is /roadmap/components, which will map to the controller roadmap and the action components. If no action is provided, the action index is assumed, and if no controller is provided, the controller index is assumed (following the Apache convention that maps a DirectoryIndex automatically).[/url]
Azaz, a controller nevéből és az actionből épít URL-t. Kérdésem: van-e a keretrendszerben beépített mód a fentiek szerinti parametrizált URLek használatára vagy ehhez ki kell terjesztenem a front controllert?
Köszönöm
János
■ Úgy döntöttem, hogy belevágok a Zend Framework megtanulásába. Sikerült is az első kanyart bevenni, a ZF jól teljesített, a tutorialon komolyabb idegeskedés nélkül túl vagyok. Adódott azonban az a remélhetőleg el nem ítélhető vágyam, hogy ilyen URL-eket gyártsak:
http://enoldalam.hu/blog/2010/01/20/bejegyzes_cime
Namost, a doksi a következőt írja:
[quote]By default, the first segment of a URL path maps to a controller, and the second to an action. For example, given the URL http://framework.zend.com/roadmap/components, the path is /roadmap/components, which will map to the controller roadmap and the action components. If no action is provided, the action index is assumed, and if no controller is provided, the controller index is assumed (following the Apache convention that maps a DirectoryIndex automatically).[/url]
Azaz, a controller nevéből és az actionből épít URL-t. Kérdésem: van-e a keretrendszerben beépített mód a fentiek szerinti parametrizált URLek használatára vagy ehhez ki kell terjesztenem a front controllert?
Köszönöm
János
Megoldva
A kérdés már csak az, hogy a gyakorlatban ez hogy néz ki...
<kötekedés>Az idézet nem
De ha a "blog" egy controller, akkor én kb úgy oldanám meg, hogy 2 routert regisztrálnék
a router construktor 3. paraméterével lehet megnevezni a paramétereket, amiket az action-ben elérhetsz a
$this->_request->getParam('year');
$this->_request->getParam('day');
stb. módon (bár lehet, hogy fordítva kell megadniarray('title' => 1, 'day' => 3 [...] )
)Hol?
Bootstrap
Bootstrap::_initRouter()
-ben kell deffiniálni. A máshol (pl adatbázisban) tárolt útvonalak definiálására egy controller plugint használok.Nálam ez az egész úgy néz ki, hogy a plugin
routeShutdown
-ban elrakja cache-be az regész Router objektumot, a Bootstrap pedig csak akkor kezdi újra felépíteni azt, ha szükségesKöszönöm