Ho una taglia di 250 punti su questo ma il sistema non mi consente di avviarlo immediatamente.Copione graduale alla struttura di cartelle basata su moduli per il progetto zend, bounty in arrivo
Sto cercando una spiegazione passo-passo su come andare dalla struttura delle cartelle normale sulla sinistra dove la cartella contiene application
models,views,controllers
, alla struttura di cartelle del modulo basata sulla destra dove application
contiene una modules
cartella che contiene i singoli moduli con il proprio models,views,controllers
.
Dico "conversione" perché non credo che zend ci permetta di creare progetti usando l'architettura del modulo dall'inizio, ma se lo facesse, sarebbe bello e rimuoverebbe la necessità di fare manualmente le modifiche alla struttura delle cartelle.
Ecco la mia esperienza finora
Quando creo un modulo
zf create module product
, la cartella moduli viene generato e una cartellaproduct
viene generato al suo interno e laviews,controllers,models
per quel modulo sono anche generato.Ma ho anche bisogno di spostare il principale
views,controllers,models
in una cartellamodules/default
. Se creo quella cartella manualmente e sposto loviews,models,controllers
principale, ottengo un bug quando provo ad aggiungere nuovi controller a quel modulodefault
. Il problema è che ri-genera principale (oggi mancante)views,controllers,models
inapplication
e inserisce tale nuovo controllerapplication/controllers/newcont
perché non riconosce che la cartella controllori predefinita è stata spostata manualmenteapplication/modules/default/controllers/
.Quindi la mia soluzione è stata quella di
zf create module default
quindi copiare il principaleviews,models,controllers
lì. Finisce per sembrare uguale ma in qualche modo il metodozf create module
fa la differenza. Quando faccio in questo modo, nuovi controller vengono aggiunti correttamente nellaapplication/modules/default/controllers
e nonapplication/controllers
metà del problema risolto. Ma quando provo a visualizzare l'applicazione, non vedo nulla dalla vista index/index
. Neanche io ricevo errori, ma non vedo nulla. Sospetto che sia perché l'applicazione non sa che la vista index/index
è stata spostata.
- Questo era situato a
application/views/scripts/index/index.phtml
- ma ora è situato a
application/modules/default/views/scripts/index/index.phtml
Sto indovinando ho bisogno di apportare modifiche per Application.ini o bootstrap.php o qualche altra posizione . Quindi, quali sono esattamente i passaggi per ottenere questo risultato senza intoppi e farlo funzionare? Sto usando l'ultimo ZF 1.10.8. Si prega di iniziare da creare un nuovo progetto di Zend quindi non c'è confusione sui passaggi esatti.
Grazie Tim, più che utile, ho risolto completamente il mio problema. Inizierò la taglia quando il sistema mi consentirà (penso 2 giorni o qualcosa del genere) e sceglierò questa risposta. – jblue
+1 per la risposta eccellente, in particolare per 'prefixDefaultModule' –
Scusate per la taglia tardiva. Il sistema richiedeva che io attenda 23 ore dal momento in cui ho iniziato la taglia prima che potessi assegnarla + ho dovuto aspettare 2 giorni dopo aver postato la domanda per avviare la taglia. Stupido sistema di taglie. – jblue