|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() |
Bonjour à tous !
Je suis débutant avec symfony et je rencontre un problème qu'il faut que je résolve avant de continuer à développer, c'est pourquoi j'ai besoin de votre aide. Ce n'est pas forcément un problème avec symfony mais un problème de modélisation en général. En fait je souhaite développer un site de petites annonces qui serait rangées dans des catégories (une petite annonce appartient à une seule catégorie). Je dois pouvoir définir pour chaque catégorie des critères qui doivent après être renseigné (ou non) par les petites annonces. Par exemple, la catégorie "Immobilier" qui aurait les critères "Prix", "Nombre de chambres", etc. et une petite annonce qui contiendrait le prix mais pas forcément le nombre de chambres. Mais il ne faut pas que la petite annonce puisse remplir les critères d'une autre catégorie. Je suis parti sur trois tables Annonce, Catégorie et Critères où : - une annonce appartient à une seule catégorie (OneToMany), - un critère appartient à une ou plusieurs catégories (ManyToMany). J'ai une autre relation ManyToMany qui lie une annonce à un critère, avec une valeur (pour indiquer le prix dans l'exemple ci-dessus). Je peux vous copier mon schéma YAML si besoin est. Je ne sais pas du tout si c'est la bonne façon de m'y prendre et comment avec symfony je vais pouvoir générer automatiquement les formulaires associés. Je voudrais en effet pouvoir remplir les critères (correspondant à la catégorie) d'une petite annonce lorsque je crée ou modifie celle-ci. Peut-être qu'il faut que je fasse quelque chose de plus statique et que je définisse mes critères directement dans le schéma de la base de données. En tout cas je suis preneur si vous avez des idées d'améliorations... Merci pour votre aide ! |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Développeur Web Inscription : mars 2005 Messages : 769 ![]() |
Le modèle me semble correct. Si la traduction dans ton schéma YAML est bien faite, symfony te permettra de générer automatiquement les classes du modèle, des filtres et formulaires et les pages d'administration CRUD.
Mais les formulaires fournis sont basiques. Pour gérer les tables associées, il faudra passer par des formulaires enchâssés (embedded forms). Voir par exemple les chapitres sur les formulaires dans : |
|
|
10
|
|
|
#3 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Tu peux te servir de ta table critère (celle ou tu définis les types de critères) pour aussi préciser le type de donnée (ce qui permettra d'utiliser cette information pour générer le form nécessaire à ce critère (choix du Widget et du Validateur).
Attention cependant si la table vient à grandir, les requêtes sur plusieurs critères risquent fort de devenir très, très lourdes.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
10
|
|
|
#4 | |
|
Membre actif
![]() Fabrice AgnelloDéveloppeur informatique Inscription : octobre 2010 Messages : 76 ![]() |
Citation:
- un back-office permettant la gestion des annonces avec une base normalisée - un front-office (pour l'internaute) s'appuyant sur une base dénormalisée favorisant un accès rapide à l'information. le transfert du back vers le front peut alors se faire soit de façon périodique (chaque nuit par exemple), soit lors de l'enregistrement d'une annonce sur le back-office. |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com