Archívum - Okt 22, 2013 - Fórum téma
rest routing
Szeretnék rest routing-ot csinálni, úgy, hogy ne kelljen kézzel megadni a mapping-et, hanem teljesen automatikus legyen.
Két koncepció jutott eszembe:
1.)
Megadom annotációban minden resource osztály mellé, hogy milyen url template tartozik hozzá, ebből aztán generáltatok egy config fájlt, ami tartalmazza a mapping-et, ezt beolvasva fel tudja konfigolni a routert a rendszer, illetve meg tudja mondani egyes erőforrás példányokról, hogy milyen url tartozik hozzájuk.2.)
Az url-ben az egyes csomópontokat megfeleltetem egy-egy property-nek. Csinálok egy $api nevű változót, és egyesével lépkedve rajta a csomópontokon kikeresem az adott erőforrást.Ez routing-ban gyorsabb, mint a hagyományos megoldás, viszont ahhoz, hogy resource példányokat lehessen csinálni az adatbázisból vagy az input-ból érkező adatok alapján, végig kell lépdelni minden alkalommal a csomópontokon.
Szerintetek melyik a jobb megoldás?
(az autocomplete mindkét típusú kódra megoldható...)
■ Két koncepció jutott eszembe:
1.)
Megadom annotációban minden resource osztály mellé, hogy milyen url template tartozik hozzá, ebből aztán generáltatok egy config fájlt, ami tartalmazza a mapping-et, ezt beolvasva fel tudja konfigolni a routert a rendszer, illetve meg tudja mondani egyes erőforrás példányokról, hogy milyen url tartozik hozzájuk.
@url = /user/@id
class User implements Resource {
...
}
$user = new User();
$user->setId(123);
$url = $user->getUrl();
Az url-ben az egyes csomópontokat megfeleltetem egy-egy property-nek. Csinálok egy $api nevű változót, és egyesével lépkedve rajta a csomópontokon kikeresem az adott erőforrást.
$user = $api->user->_id(123);
$url = $user->_url();
Szerintetek melyik a jobb megoldás?
(az autocomplete mindkét típusú kódra megoldható...)
Miért pont sablon ?
tgr, pp
Köszönöm a pontosítást a drupállal kapcsolatban (hogyan ragozzák ezt helyesen?). A belinkelt hozzászólás furcsa a maga módján. A fejlesztők nem a karbantartást választották egy bejáratott elemnél, hanem dobták, és visszatértek az alapokhoz.
inf3rno
Nekem pont ellentétes a véleményem. Még nem találták fel a kereket. Azért van a sokféle próbálkozás. A kerék univerzális eszköz, nekünk nincs ilyen.
Azt hiszem, a sablonok interfésznek tekinthetők a szerver oldali program és böngésző között. Adattal való feltöltésükre készültek a sablonozó megoldások.
A Smarty, a saját nyelvet alkalmazók mintha zsákutcában járnának. Nem a futtatható nyelv a lényeg, ez elég jól látszik. Van ilyen, és akkor hogyan tovább?
Ami kell, az a böngészőnek megfelelő adatok összeállítása. Erre kétféle művelet elegendő. Sztring beillesztése egy kijelölt helyre, illetve "zárójelezett" tartalom duplikálása, iterálása. Például a Mustache és személyes kedvencem az xTemplate képességeiből elég mindössze ennyit használni. Aki ezt kitalálta, szerintem ráhibázott valamire.
■ Drupal alap sablonnyelve a PHP ...
Köszönöm a pontosítást a drupállal kapcsolatban (hogyan ragozzák ezt helyesen?). A belinkelt hozzászólás furcsa a maga módján. A fejlesztők nem a karbantartást választották egy bejáratott elemnél, hanem dobták, és visszatértek az alapokhoz.
inf3rno
Nekem a sablonnyelvektől van ilyen érzésem, nem értem minek újra és újra feltalálni a kereket...
Nekem pont ellentétes a véleményem. Még nem találták fel a kereket. Azért van a sokféle próbálkozás. A kerék univerzális eszköz, nekünk nincs ilyen.
Azt hiszem, a sablonok interfésznek tekinthetők a szerver oldali program és böngésző között. Adattal való feltöltésükre készültek a sablonozó megoldások.
A Smarty, a saját nyelvet alkalmazók mintha zsákutcában járnának. Nem a futtatható nyelv a lényeg, ez elég jól látszik. Van ilyen, és akkor hogyan tovább?
Ami kell, az a böngészőnek megfelelő adatok összeállítása. Erre kétféle művelet elegendő. Sztring beillesztése egy kijelölt helyre, illetve "zárójelezett" tartalom duplikálása, iterálása. Például a Mustache és személyes kedvencem az xTemplate képességeiből elég mindössze ennyit használni. Aki ezt kitalálta, szerintem ráhibázott valamire.