Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1

    [Database - MVC] Un aiuto per la modellazione adatta a pattern MVC

    Salve a tutti. Sto cominciando la realizzazione di un piccolo progetto con CakePHP e sono in cerca di aiuto per sciogliere qualche dubbio di base.
    Nel mio progetto devo gestire una collezione di recensioni cinematografiche di più autori. In un classico modello E-R avremmo l'entità film, l'entità recensore e la relazione molti a molti tra le due entità che sarebbe la recensione.

    Dovendo però usare cakephp sorgono dei dubbi. :master: CakePHP prescrive di creare join table molti a molti con nome e campi standard (ma è possibile aggiungere campi). Volendo seguire alla lettera questa prescrizione e senza voler creare tabelle aggiuntive si avrebbe solamente una join-table films_recensori.
    Però così sorge il problema: sbaglio o rimarrei senza la possibilità di costruire il model per la recensione? Mi serve, non mi serve?

    Mi vengono in mente altre soluzioni. Potrei creare un modello recensione e mettere questo in relazioni separate con gli altri due, senza usare la relazione molti a molti.
    Oppure - probabilmente meglio - potrei affiancare un modello per la recensione da affiancare alla join-table molti a molti.

    Insomma, non so bene cosa fare. E' la prima volta che uso questo paradigma di progettazione e, pur avendo letto parecchia documentazione, non so bene prevedere a cosa potrei andare incontro scegliendo per una strada o per l'altra.

    EDIT

    Leggo adesso che posso creare modelli che usano una tabella definita a piacimento.
    http://book.cakephp.org/view/71/Model-Attributes

    In teoria quindi si può creare benissimo il modello "recensione" e assegnargli la join table films_recensori.
    Forse è questo il modo giusto.

  2. #2
    UP

    Domanda: da quando sono iscritto ho aperto tre topic riguardo CakePHP o la programmazione MVC in genere, li ho fatti risalire ognuno più volte... ma nessuna risposta.
    Ma non c'è nessuno qui che si occupi di queste cose? Devo finire per forza sui forum stranieri?

  3. #3
    UP...

  4. #4
    Originariamente inviato da el gaviota
    UP

    Domanda: da quando sono iscritto ho aperto tre topic riguardo CakePHP o la programmazione MVC in genere, li ho fatti risalire ognuno più volte... ma nessuna risposta.
    Ma non c'è nessuno qui che si occupi di queste cose? Devo finire per forza sui forum stranieri?
    il fatto è che si seguono varie correnti..io ad esempio sono un entusiasta sostenitore dello Zend Framework, anche lui prevede un framework per usare MVC ma di certo è diverso da cakephp che non conosco...
    vorrei tanto che si facesse magari un sondaggio e decidere di aprire un thread su questi framework per PHP, sarebbe la cosa migliore!!!

  5. #5
    Io sono un novellino... non conosco bene le differenze tra i framework. Tuttavia credo che l'interrogativo per il quale chiedo aiuto in questro thread sia legato più in generale al paradigma MVC (non a caso non ho messo CakePHP nel titolo).

    Comunque sono d'accordo con te. Ci vorrebbe un bel thread ufficiale per ogni framework.

  6. #6
    Originariamente inviato da el gaviota
    Io sono un novellino... non conosco bene le differenze tra i framework. Tuttavia credo che l'interrogativo per il quale chiedo aiuto in questro thread sia legato più in generale al paradigma MVC (non a caso non ho messo CakePHP nel titolo).

    Comunque sono d'accordo con te. Ci vorrebbe un bel thread ufficiale per ogni framework.

    http://www.phpro.org/tutorials/Model...oller-MVC.html


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  7. #7
    Originariamente inviato da whisher
    http://www.phpro.org/tutorials/Model...oller-MVC.html


    Ti ringrazio per l'attenzione, però io ho letto praticamente tutta la documentazione inglese del CakePHP (centinaia di pagine), il link non mi aiuta e tralaltro non si concentra sul nodo centrale che è la struttura del db. Il dubbio che ho è molto circoscritto e, se vuoi, lo metto in termini più generali:

    abbiamo due entità e una relazione molti a molti che le lega. La relazione molti a molti contiene, per ogni associazione, ulteriori attributi.



    La domanda è: il paradigma MVC prevede di creare un model e un controller per ogni entità, e questo è pacifico. Ma la relazione? Come va rappresentata?
    In caso di relazione che non aggiunge alcuna informazione oltre le associazioni delle chiavi esterne (ad esempio dei tag associati a dei video) in teoria non ci sono dubbi: la relazione è rappresentata da una tabella nel db, ma non serve nessuna classe model o controller relativa ad essa.

    Ma qui ricadiamo in un caso diverso. La relazione è qualcosa che rappresenta un oggetto vero e proprio nel dominio del problema (la recensione nel mio caso). Cosa bisogna fare? Bisogna creare una terza coppia model e controller? Ho sbagliato a creare un diagramma E-R così minimale?
    Bisogna riformulare il diagramma aggiungendo una terza entità e introdurre delle relazioni puramente associative?

  8. #8
    up... (posso farne uno al goirno, vero?)

  9. #9
    non mi intenderò di MVC con CakePHP però hai detto che hai a che fare con uan relazione molti a molti in un DB: essendo il tipo di relazione più difficile, è necesario spezzarla introducendo una tabella temporanea in modo da creare relazioni uno a molti fra le due tabelle e quella temporanea.
    Ad esempio se le tabelle sono A e B e la tabella temporanea è TEMP contenente i dati in comune ad A e a B allora bisogna instaurare relazioni uno a molti fra A con TEMP e B con TEMP.
    Perciò penso che in MVC occorrerà creare sia un model che un controller per gestire la tabella temporanea a cui passare i dati di A e B necessari per instaurare le relazioni uno a molti...

  10. #10
    Originariamente inviato da el gaviota
    Ti ringrazio per l'attenzione, però io ho letto praticamente tutta la documentazione inglese del CakePHP (centinaia di pagine), il link non mi aiuta e tralaltro non si concentra sul nodo centrale che è la struttura del db. Il dubbio che ho è molto circoscritto e, se vuoi, lo metto in termini più generali:

    abbiamo due entità e una relazione molti a molti che le lega. La relazione molti a molti contiene, per ogni associazione, ulteriori attributi.



    La domanda è: il paradigma MVC prevede di creare un model e un controller per ogni entità, e questo è pacifico. Ma la relazione? Come va rappresentata?

    In caso di relazione che non aggiunge alcuna informazione oltre le associazioni delle chiavi esterne (ad esempio dei tag associati a dei video) in teoria non ci sono dubbi: la relazione è rappresentata da una tabella nel db, ma non serve nessuna classe model o controller relativa ad essa.
    sicuramente nel modello... come rappresentarla sono scelte del programmatore...
    Originariamente inviato da el gaviota Ma qui ricadiamo in un caso diverso. La relazione è qualcosa che rappresenta un oggetto vero e proprio nel dominio del problema (la recensione nel mio caso).
    non ho capito
    Originariamente inviato da el gaviota
    Cosa bisogna fare? Bisogna creare una terza coppia model e controller? Ho sbagliato a creare un diagramma E-R così minimale?
    Bisogna riformulare il diagramma aggiungendo una terza entità e introdurre delle relazioni puramente associative?
    le relazioni sono associative certo... ma penso che non ti sei spiegato benissimo... proviamo a partire con meno astrazione... ho l'impressione che hai dimenticato dei pezzi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.