Chiedo indicazioni per sturttura sito

Buongiorno.

Sto facendo una semplice pagina di Portfolio: foto, titolo, descrizione.

Ho creato database e generato model, controller e relative pagine crud.

La pagina di Portfolio per il visitatore dove è il caso di inserirla?

  • Nella cartella "views/portfolio" insieme alle relative crud?

  • Nella cartella “views/site” automaticamente generata al momento dell’installazione di Yii dove ci sono le pagine pubbliche?

Altra domanda:

Perché la pagina “about” è all’interno della cartella “views/site/pages” e non allo stesso livello delle altre: index, login e contact?

Grazie infinite

Direi che non c’è una risposta esatta. Però posso farti le mie considerazioni. Se il portfolio è una pagina semplice, la considererei come una “pagina” del “sito” e dunque potremmo metterla dentro site/page/portfolio.php. Più o meno ho cercato di risponderti anche alla seconda domanda.

La verità è che dipende solo da te. Io, in genere, tendo a cercare di allocare i file nella posizione più semantica possibile. Per esempio

Se intendo la pagina about come la pagina "chi siamo" del "sito" allora la posizione dentro site/pages.

Se intendo la pagina about come la sezione "chi siamo" del "sito" creo una view direttamente dentro site.

Mettiti nei panni di un tuo potenziale collega. Immagina cosa gli diresti per fargli capire esattamente dove si trova una view. Queste sono e rimangono mie considerazioni personali. In generale cerco sempre di mettermi nei panni di un "esterno" e capire se la disposizione dei files mi aggrada.

Ciao Sensorario, grazie per la risposta anche se non sono convinto di aver capito.

Forse io sono condizionato dal fatto che ho sempre ragionato in termini di pagine a sè stanti e non di views.

Comunque "about.php" e "contact.php", a mio avviso, sono due pagine "semplici" e, in qalche modo, affini.

Perché l’installer di Yii le ha messe su due diversi livelli? Qual’è la logica che segue?

Prendendo il tuo esempio:

per come ragiono io (malamente magari), se devo fare una sezione "About" creo una cartella con tale nome e dentro metto i relativi documenti.

Perdona se insisto è che vorrei partire col piede giusto e imparare a strutturare il sito in maniera corretta.

Non vorrei trovarmi, un domnani, ad aprire ogni file per capire cosa c’è dentro.

Grazie per la pazienza

Io personalmente, apprezzo la semplicità e l’ordine: non uso sottocartelle come fa yii normalmente con la pagina. /wiew/<nomeController>/<nomeView>.php e basta.

Quindi ti consiglio di fare lo stesso. =)

le pagine sotto pages sono statiche, cioè non hanno contenuti provenienti da model (vedi SiteController -> actions), quindi se la tua è dinamica mettila in views/portfolio

Vuoi dire che non posso usare il model da una "pages"? Vado di corsa e non posso provare.

Vuoi dire che non posso usare il model da una "pages"? Vado di corsa e non posso provare.

Grazie markux, per il contributo. Terrò in considerazione la tua indicazione.