Sto lavorando con pattern DAO in PHP. Capisco i benefici che si ottengono separando il proprio modello in questo modo, ma quello che non capisco è come si dovrebbero costruire DAO e VO quando le tabelle sono collegate attraverso l'entità associativadao pattern e relazioni
Farò un esempio:
Nel mio DB ho
USERS(id,username);
USERS_POSTS(id_user(FK),id_post(FK));
POSTS(id, title);
USER_COMMENTS(id_user(Fk),id_post(FK));
COMMENTS(id, text);
creo UserVO, PostVO con setter e getter corrispondenti e quindi UserDAO e Messaggio DAO responsabile di SQL che alla fine restituiscono VO. L'esecuzione delle operazioni CRUD sui dati di queste tabelle è davvero semplice, ma quando inizi a pensare di mettere in relazione tabelle e recuperare i dati attraverso tabelle diverse, inizi a pensare che usare DAO non sia più così semplice ...
Come organizzeresti il tuo pattern DAO se volessi restituire tutti i commenti dell'autore dell'articolo? Non ho bisogno di query SQL Sto solo dando questo esempio di situazione reale ...
Ho letto che sarebbe una buona idea avere DAO associativi e Vo per ogni tabella associativa. In cosa consisterebbe il suo VO? Solo 2 chiavi esterne o tutti gli attributi di entrambe le tabelle?
Se la logica sta avendo DAO e VO per entità associativa, quali sono le soluzioni se la query passa "attraverso" più di 3 tabelle (utilizzando 2 entità associative)?
dubito che modello DAO avrebbe oggetto chiamato users_posts_comments_article :)))
Grazie
Grande, ho avuto tre upvotes: p Ora, qualcuno potrebbe dirci di più su questo problema :) Ho so che c'è l'ORM in soccorso, ma poi non ho il pallino di DAO :))) – luigi7up
E quasi dimenticavo ... Ho la sensazione che se comincio ad implementare cose che riguardano le relazioni finirò per reinventare la ruota - vale a dire ORM ?! – luigi7up