[ZF] Scheiden van backend en frontend
De backend is uitsluitend toegankelijk voor een kleine set aan gebruikers die in een MySQL tabel staan.
Om deze twee 'lagen' te scheiden lees ik over diverse mogelijkheden op internet. O.a. het gebruiken van modules dus modules/admin/controllers en modules/default/controllers etc.
Nu heb ik hier opzich geen problemen mee behalve dat de admin niet echt een module is maar een heel deel (zelfs groter als de frontend) maar daar heb ik dan nog niet zo'n probleem mee.
Kan je op deze manier nog wel op dezelfde manier gebruik blijven maken van je models?
En hoe lossen jullie dit op met urls + het rerouten daarvan?
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
$tableUser = new Table_User();
$tableUser->get();
// Of
$tableUser->select()->where() // etc
?>
$tableUser = new Table_User();
$tableUser->get();
// Of
$tableUser->select()->where() // etc
?>
Zend framework gaat dan op basis van je include paths proberen het bestand te includen en de klasse te instantieren. De _ wordt omgezet naar een / en je klasse moet dan ook Table_User heten.
Je krijgt dat de volgende mappen structuur:
Je user.php ziet er dan zo uit.
En over routes.. Sommige routes blijven voor zowel de frontent als de backend gelijk. Andere zul je dus twee keer aan moeten maken denk ik.
Gewijzigd op 11/07/2011 19:17:17 door Niels K
Het module-systeem van ZF is toch juist bedoeld om scheidingen als dit mogelijk te maken? Gewoon twee modules gebruiken dus.
Niels Kieviet op 11/07/2011 18:14:15:
Wil je van alles twee? Of echter alleen controllers, en models? Ik bedoel wanneer je één bootstrapper gebruikt moeten je models gewoon blijven werken. Je include path moet gewoon goed staan. (Dus twee bootstrappers moet ook werken) Bijvoorbeeld:
De bedoeling is -juist- dat alleen views/controllers opgedeeld worden in deze twee secties en niet de models want die zijn voor beide zijden gelijk.
Wat betreft het modulaire systeem en ook van jouw link, geeft mij het gevoel dat je elk groot onderdeel moet opsplitsen in een module. Echter vind ik dan de admin daar nog een schep bovenop dus als het op die manier beredeneerd word zou de admin ook op die manier opgesplitst moeten worden.
In deze applicatie is de admin vele malen groter als de voorkant.
Maargoed veel tutorials wijzen er ook op dat je het modulaire systeem hiervoor moet gebruiken dus dat ga ik denk ook maar doen..
Gewijzigd op 11/07/2011 20:26:49 door kees Schepers
Tja, naar mijn weten kan je gewoon één model plaats maken. Ik zou zeggen probeer eens wat uit :-)
Ja ga ik zeker doen, het ging mij meer erom hoe andere ZF ontwikkelaars dit punt oppakte, dus volgens mij met het maken van modules :)
Het is een persoonlijk keuze. Jij moet er tenslotte mee werken.
Veel succes!
Gewijzigd op 11/07/2011 20:42:30 door Niels K