Symfony et vues/procédures stockées [MVC] - SQL/NoSQL - Programmation
Marsh Posté le 22-04-2008 à 10:12:45
Quel est le problème, en fait?
Marsh Posté le 22-04-2008 à 10:32:04
La question, c'est de savoir si avec symfony je peux garder mes procédures où est-ce que je dois "recoder" les procédures en tant que méthodes dans la partie "model" du MVC ?
Pour les vues, est-ce utiles sous symfony ? comment s'en sert-on ?
Et enfin, connaissez-vous des exemples de modèle moins "simple" que l'exemple du tutoriel où comme moi, une table seule dans le modèle relationnel ne représente pas un objet en soit, contrairement à l'exemple que donne symfony.
Par exemples, ma table commande ne contient pratiquement aucune infos, juste la date de commande, quelques booléens de contrôle d'état, et après ce sont des clés étrangères vers d'autres tables (personne responsable, auteur, destinataire...) où bien j'ai d'autres tables qui contiennent des clés étrangères vers mes commandes (table de liaison produits - commandes entre autres).
Il me faut faire pas mal de jointure sur d'autres tables pour construire ma commande, du coup si je créer un module comme le montre l'exemple, je suis loin de pouvoir construire un objet "commande" représentant ce que je conçoit comme objet commande dans mon esprit.
Du coup je ne sais pas quels modules je dois créer dans symfony.
Marsh Posté le 12-01-2011 à 17:47:53
uncle buzz a écrit : La question, c'est de savoir si avec symfony je peux garder mes procédures où est-ce que je dois "recoder" les procédures en tant que méthodes dans la partie "model" du MVC ? |
Up !
As-tu trouvé une réponse à ta question ?
Marsh Posté le 12-01-2011 à 17:50:43
le plus simple si tu veux garder une certaine portabilité est de mettre tes procedure sur les méthode presave/postsave de tes objets
Marsh Posté le 22-04-2008 à 09:36:42
Bonjour,
Etant autodidacte en programmation (à titre purement personnel et non professionnel) je code des "trucs" qui fonctionnent mais forcément mal écris et non optimisé.
Pour mon boulot, je cherche à me développer une sorte d'intranet qui me faciliterai la vie tous les jours pour la gestion des commandes et leur suivit (PME de 6 salariés). Pour le moment le but est juste de faire "joujou" avec du code, si j'arrive à faire un truc qui marche bien alors je m'en servirai au boulot, le but n'est pas de développer une appli pro même si au final elle pourra servir en tant que telle.
Ayant une formation d'ingénieur en mécanique, j'ai survolé la programmation C++ et la POO en cours donc je comprend le principe et les mécanismes simples mais je suis vite largué quand même.
J'ai donc un modèle conceptuel assez complexe (c'est relatif bien sur, complexe à mon niveau, une vingtaine de table avec pas mal de références croisées ce qui rend le modèle assez illisible (pas mal de croisement dans mon MCD)) pour gérer des commandes, donc avec des tables produits, société, personnes, bureaux... etc
Histoire de faire quelque chose de propre et d'apprendre un peu, je me suis tourner vers symfony pour développer mon appli en PHP + mysql que j'ai déjà pratiqué (php et mysql), mais je me pose quelques questions de débutants :
sur les exemples du "tutoriel" de symfony, on génère un module par table (l'exemple est simple et s'y prête bien) qui contient le(s) contrôleur et la(les) vue(s), hors dans mon cas, mes tables ne se suffisent pas à elles mêmes et l'information est découpé dans plusieurs tables (principe d'une base relationnelle). comment alors construire une vue et un contrôleur autrement que rattaché à une table unique ? Symfony construit des objets basé sur les tables, mais mes tables prisent une à une ne représentent pas d'objet telle quel. Je ne sais pas comment je dois créer mes modules pour mon appli à partir des exemples du tutoriel.
J'avais prévu de faire des procédures stockées que mon code appellerai pour laisser le soin à mon SGDB de gérer toutes les requêtes et insertions pour assurer l'intégrité de la base, ainsi que des vues dans lesquelles mes jointures à rallonge seraient déjà écrites et validées, mais tout ceci est-il faisable avec un framework comme symfony ? j'ai l'impression que symfony gère tout tout seul de A à Z une fois qu'on lui a donné le modèle, mais j'aurai préferré garder mes procédures stockées qui me permettent en plus de modifier légèrement ma base sans changer le code de l'appli, et m'assure de ne pas inserrer n'importe quoi, comme des doublons par exemples plûtot que de réécrire les requètes une à une dans mon code. J'imagine que réécrite sous forme de méthode, il n'y aura aucune différence ?
Avez-vous des renseignements à me donner à ce sujet, où des exemples plus proches de mon cas à étudier ?
Si besoin je peux essayer de publier une image de mon MCD mais je ne suis pas sur que ce soit nécessaire pour m'orienter.
Merci