{sf} admin générator basé sur plusieurs tables - Apprendre-PHP.com

Rechercher
Boutique en ligne, solution e-commerce, script PHP et PERL : RAYNETTE

{sf} admin générator basé sur plusieurs tables

Par saturn1 -  5 reponses -  Le 29/05/2009 -  Flux RSS - 

Salut j'ai 5tables ~ comme ceci commentaireObjet(id,content,#memberId,#objetId);

Avec objet qui sont News,sons,videos ...

 

Bref je veux adminstrer les commentaires.

Or j'aimerai avoir tous les commentaires sur une même page (le mieux aurait été de faire une seule table commentaire...)

Donc j'ai matté le code source et j'ai vu une méthode buildQuery j'ai essayé de modifier un peu mais j'ai pas trop réussi.

 

Ce genre de chose est - il simple à faire???

 

 

Merci

 

 

Réponses apportées à cette discussion

Par Emacs -  Le 30/05/2009 - 

Ne fais qu'une seule table Commentaire dans laquelle tu stockes l'id de l'objet commenté ainsi que son type.

 
Par saturn1 -  Le 30/05/2009 - 

Oui j'y ai pensé mais ...

Ma table commentaire sera :

commentaire(id,content,#objetID,#memberId,objet)

 avec objet qui sera : news, son , video ...

Si je met le onDelete:Cascade.

 

Si je supprime un objet news avec l'id 45. Cela supprimera tous les commentaire avec objetId 45 donc aussi les commentaire de du son id 45 , de la video id 45 ...etc..

 

VOis-tu une solution à ce problème??

 

MERCI

 

 

 
Par Emacs -  Le 31/05/2009 - 

Avec cette méthode, tu ne pourras pas appliquer de onDelete cascade. Tu devras surcharger le delete() de chaque objet pour intégrer la suppression des commentaires associés.

 
Par Emacs -  Le 31/05/2009 - 

Ou alors, une autre manière de procéder, c'est de recourir à l'héritage de table grâce à Doctrine. Tu fais une table Comment avec (id, name, email, site, message)... et ensuite tes n rables CommentNews, CommentVideo, CommentMusic... qui dérivent Comment et qui intègrent toute la FK vers les tables de contenu correspondantes. Regarde dans la doc de Doctrine pour y parvenir ;)

 
Par saturn1 -  Le 04/06/2009 - 

Je dois utiliser Simple inheritance ou concrete inheritance??

 

Je pense faire un truc comme sa :

 

  1. Commentaire
  2. actAs:
  3. Timestampable: ~
  4. COLUMNS:
  5. membre_id:
  6. type: INTEGER(4)
  7. contenu:
  8. type: clob
  9. notnull: TRUE
  10. relations:
  11. sfGuardUser:
  12. onDelete: CASCADE
  13. local: membre_id
  14. FOREIGN: id
  15.  
  16.  
  17.  
  18.  
  19. EvenementCommentaire:
  20. inheritance:
  21. extends: Commentaire
  22. type: concrete ou simple ????
  23. COLUMNS:
  24. evenement_id:
  25. type: INTEGER(4)
  26. notnull: TRUE
  27. relations:
  28. Evenement:
  29. onDelete: CASCADE
  30. local: evenement_id
  31. FOREIGN: id

 

 

Qu'en penses - tu ??

Merci =)

 

 

 

Ajouter une réponse à la discussion

Seuls les membres loggués sont autorisés à poster dans les forums !