Hirdetés
- Svájcban bukkant fel egy Berlinbe készülő HMD
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Xiaomi 15 - kicsi telefon nagy energiával
- Xiaomi Watch 2 Pro - oké, Google, itt vagyunk mi is
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Google Pixel 10 Pro XL – tíz kicsi Pixel
- One mobilszolgáltatások
- Telekom mobilszolgáltatások
- Milyen okostelefont vegyek?
Új hozzászólás Aktív témák
-
cucka
addikt
válasz
Peter Kiss #6983 üzenetére
Hogyan oldjam meg, hogy a top level HTML elemeket tartalmazó View darabok, és esetleg pl. a menüt tartalmazó részeket berántsa magának?
Feltételezem, hogy olyan template nyelvet használsz, ami include-al működik (kívülről befele), nem pedig inherit-el (belülről kifele). Na ez esetben úgy oldod meg, hogy van egy alap template-ed, mondjuk legyen page, ami valahogy hasonlóan néz ki php-t használva template nyelvnek:
<html><head>/ .. /</head>
<body>
<div id="menu"><?php include 'menu.tpl'; ?></div>
<div id="content"><?php include $context['page_body']; ?></div>
/ ... /
</body></html>
Ez az oldal váza, amiből lehet többféle is, a lényeg, hogy a template elkészítése kívülről befele történik. Ezt a vázat fogja a view megjeleníteni. Azt, hogy a kontent részbe mit pakolunk, az attól függ, hogy a controller mit állított be a $context['page_body'] változóban. A kontrollered ez esetben valahogy így fog kinézni:
function view(/../){
/../
$context['page_body']='edit_form.tpl';
return render_template('page_base_template.tpl', $context);
}
Az action beállítja a page_body értékét (vagyis hogy melyik file-t kell behúzni a tartalmi részbe), majd lerendereli az alap template-et a megfelelő paraméterekkel. A $context változó szerepe, hogy ebben tároljuk azokat a paramétereket/változóértékeket, amelyeket a template-ek felhasználnak a html legyártásához.
Természetesen ez csak egy rövid példa, remélhetőleg átjön a lényeg.
Arra kellene valami jó megoldás, hogy miként töltse be az adott részeket a cucc.
Normális autoload-ot kell írni. Az számomra rejtély, hogy az Areas mappád mit jelent és miért van benne külön M,V,C mappa, amikor ezek a gyökérben is ott vannak. Saját MVC framework-öt fejlesztesz, vagy kész megoldást szeretnél használni?
most az aktuális Controller megkapja a konstruktorában a végrehajtandó action-t (de nem a konstruktor hívja meg!).
Nem szükséges megkapnia. Egy controller általában nem más, mint action-ök halmaza, minden action egy-egy függvény a controller osztályon belül. Az, hogy melyiket kell meghívni, az a routing során dől el, ami tulajdonképpen az a rész, ahova bemegy az url és kijön a controller/action/paraméterek hármas. A framework feladata, hogy ezt megcsinálja, majd az előbb említett hármas alapján meghívja a megfelelő kontroller megfelelő action-jét a megfelelő paraméterekkel. (Illetve az is a feladata, hogy észrevegye, ha nemlétező controllert vagy actiont szeretnél meghívni, vagy esetleg a paraméterek nem megfelelőek - az elsőt az autoload/osztálykereső fogja kiszűrni, a másodikat a controller ősosztályban ügyesen megírt __call() függvény, a nem megfelelő paramétereket pedig maga az action)
Új hozzászólás Aktív témák
- Lemokey L5 HE 8K billentyűzet tesztje
- Battlefield 6
- Villanyszerelés
- OpenWRT topic
- Kerékpárosok, bringások ide!
- Svájcban bukkant fel egy Berlinbe készülő HMD
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Milyen routert?
- Milyen légkondit a lakásba?
- Konzolokról KULTURÁLT módon
- További aktív témák...
- Bomba ár! HP ZBook 14 G8 - i7-1165G7 I 16GB I 512SSD I Nvidia 4GB I 14" FHD I Cam I W11 I Gari!
- Bomba ár! HP ProBook 640 G8 - i7-1165G7 I 32GB I 512GB SSD I 14" FULLHD I Cam I W11 I Gari!
- Bomba ár! Lenovo ThinkPad T495 - AMD Ryzen PRO 7 I 16GB I 256GB SSD I 14" FHD I Cam I W11 I Gari!
- Bomba ár! Lenovo ThinkPad T14 G1 - i5-10GEN I 16GB I 256SSD I 14" FHD I Cam I W11 I Garancia!
- Bomba ár! HP EliteBook 840 G7 - i5-10G I 16GB I 256GB SSD I HDMI I 14" FHD I Cam I W11 I Gari!
- iKing.Hu - Apple Watch Ultra 2 Sportokra tervezve, prémium dizájnnal
- CSX 2x2GB (4GB) DDR 800 MHz kit
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5060 Ti 16GB GAMER PC termékbeszámítással
- Ha országosan a legmagasabb áron szeretnéd eladni a laptopodat, akkor az ELITRO a Te partnered
- Bomba ár! HP ProBook 640 G8 - i7-1165G7 I 32GB I 512GB SSD I 14" FULLHD I Cam I W11 I Gari!
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest