|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||
|
Invité régulier
![]() Inscription : janvier 2011 Messages : 12 ![]() |
Bonjour,
Encore un problème avec les embedform !!! Je m'explique : J'ai 2 tables, TypeCarte et Niveau qui sont reliées par une "relation n:n" contenant un champs prix. En français, pour chaque type de carte, on peut attribuer un prix par niveau. Le problème est qu'il m'est impossible d'enregistrer les prix à partir des embedForm contenus dans le formulaire de TypeCarte. Bon je vous affiche le code ça vous parlera plus bande de geeks schema.yml Code :
Code :
Code :
J'espère qu'une âme charitable sera me démêler de cette situation, j'ai vu sur pas mal de forum ce problème mais malgré sa récurrence aucune solution ou info n'est donnée. Merci d'avance |
||||||
|
|
00
|
|
|
#2 |
|
Invité régulier
![]() Inscription : janvier 2011 Messages : 12 ![]() |
Petite précision, je suis sous Symfony 1.4.8 avec Doctrine 1.2
|
|
|
00
|
|
|
#3 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
A ma connaissance, les embedForm sont conçu pour gérer, en automatique, uniquement des relations de type 1-n.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : janvier 2011 Messages : 12 ![]() |
Merci pour ta réponse.
Mais notre problème est que l'on doit forcer l'utilisateur à saisir un prix pour chaque niveau lors de la création d'un type de carte et la solution la plus évidente nous paraissait le embedForm et/ou embedRelation ... jusqu'à aujourd'hui On avait pensé, dans le formulaire TypeCarte, boucler sur Niveau pour afficher le champs prix de la table NiveauTypeCarte dans des embedForm quand la relation n'existe pas ou dans avec embedRelation quand elle existe. Est ce que tu aurai une piste sur ça ou carrément autre chose ? |
|
|
00
|
|
|
#5 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
En relisant tous le poste, j'ai l'impression que tu es un peu à côté dans l'implémentation de ce que tu veux faire. Du coup, ce n'est plus des embedForm basés sur un relation n-n mais sur une relation 1-n, ce qui est réalisable. En effet, la donnée que tu souhaites modifier est sur la relation et pas dans la table niveau. Et, entre TypeCarte et NiveauTypeCarte nous avons une liaison 1-n...
Si j'ai bien compris, pour un TypeCarte il convient de remplir la valeur de prix pour tous les couple NiveauTypeCarte possibles. Si j'ai faux là, ce qui précède est probablement faux aussi... L'idée est de créer tous les couples possible dans la table NiveauTypeCarte avant d'afficher le formulaire. Il suffit alors de baser le embed sur NiveauTypeCarte qui est en 1-n. Ce que tu essayes de faire actuellement est d'embed des enregistrements qui n'existent pas, d'où le problème.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Inscription : janvier 2011 Messages : 12 ![]() |
Pour la modification d'un type de carte ça passerai mais on ne peut pas créer tous les couples dans NiveauTypeCarte avant d'avoir ajouté le type de carte.
Là on essai de tout recoder pour ce faire une sorte de embedRelationForEach mais c'est pas gagné Sinon tant pis, on ajoutera un nouveau module. Mais je suis toujours preneur d'une meilleure méthode ! |
|
|
00
|
|
|
#7 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Effectivement, il faut que le type de carte soit créé avant. Je pense que le passage par un form intermédiaire pour la création est nécessaire.
Si non, il doit être possible de passer en grande partie par du JS. Mais niveau récupération, pour un formulaire qui va changer, ça va être coton pour générer le form qui fera la validation.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#8 |
|
Invité régulier
![]() Inscription : janvier 2011 Messages : 12 ![]() |
Bon, après de multiples tentatives, on a créé un autre module. Pas très logique sur l'appli mais apparemment on ne peut pas faire autrement ^^
Merci pour ta participation |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com