Django-fr

Forum

#1 24-03-2008 23:37:05

Guillaume Sueur
Membre
Inscription : 11-08-2010
Messages : 22

manyToMany dans admin

Bonjour,

C'est mon premier message sur la liste, aussi ne m'en veuillez pas trop
si je pose des questions un peu nulles...
Voici mon problème :
j'ai un modèle décrivant des couches de données. Elles ont une relation
n à n avec les utilisateurs. J'ai crée correctement le champ ManyToMany,
et j'ai une table de relation id_couche, id_user. Dans le module admin,
l'ajout de couche contient la liste des utilisateurs pouvant y accéder.
Or, j'ai beaucoup de couches. Et quand je crée un nouvel utilisateur je
n'ai par envie de les éditer toutes pour ajouter les droits à mon nouvel
utilisateur. Je voudrais donc avoir la liste des couches dans l'édition
d'un utilisateur. J'ai fait un UserProfile, mais je ne suis pas arrivé à
faire un champ ManyToMany utilisant la même table de relation que pour
mon modèle "couches".
Donc, la question est : peut-on agir symétriquement dans le module admin
sur une table n à n à partir des deux modèles qui lui sont liés ?

Merci !

Guillaume

Hors ligne

#2 25-03-2008 20:59:50

Eric SIMORRE
Membre
Inscription : 11-08-2010
Messages : 3

Re : manyToMany dans admin

Guillaume Sueur a écrit :
> Bonjour,
>
> C'est mon premier message sur la liste, aussi ne m'en veuillez pas
> trop si je pose des questions un peu nulles...
> Voici mon problème :
> j'ai un modèle décrivant des couches de données. Elles ont une
> relation n à n avec les utilisateurs. J'ai crée correctement le champ
> ManyToMany, et j'ai une table de relation id_couche, id_user. Dans le
> module admin, l'ajout de couche contient la liste des utilisateurs
> pouvant y accéder.
> Or, j'ai beaucoup de couches. Et quand je crée un nouvel utilisateur
> je n'ai par envie de les éditer toutes pour ajouter les droits à mon
> nouvel utilisateur. Je voudrais donc avoir la liste des couches dans
> l'édition d'un utilisateur. J'ai fait un UserProfile, mais je ne suis
> pas arrivé à faire un champ ManyToMany utilisant la même table de
> relation que pour mon modèle "couches".
> Donc, la question est : peut-on agir symétriquement dans le module
> admin sur une table n à n à partir des deux modèles qui lui sont liés ?
Je comprend pas trop cette question; le plus simple serais que tu nous
fasses voir ton modèle utilisé comme user profile; ce que tu veux avoir
à l'air tout à fait faisable;
Si je comprend, tu voudrais avoir dans l'edition user un champ
personnalisé du style group (qui a une relation M2M avec user)?

@+
>
> Merci !
>
> Guillaume
>
>
>
>
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>
>

Hors ligne

#3 25-03-2008 21:37:10

Guillaume Sueur
Membre
Inscription : 11-08-2010
Messages : 22

Re : manyToMany dans admin

Bonsoir,

J'ai un peu modifié mes modèles, et supprimé le userProfile pour l'instant.
Le principe, c'est qu'à partir de l'admin de mon premier modèle (les
couches) j'associe à chaque couche un certain nombre d'utilisateurs
(modèle User) via un champ ManyToMany et une table de relation.
Jusqu'ici tout va bien.
Mais j'aimerais retrouver cette même relation depuis l'admin de User,
pour pouvoir directement associer des couches à un nouvel utilisateur,
sans repasser par le formulaire de chacune des couches (malin non ? ;-)
Donc il s'agit tout simplement (!) d'intégrer le choix multiple
"couches" à l'admin de users. Et là, je coince.

Guillaume

Eric SIMORRE a écrit :
> Guillaume Sueur a écrit :
>> Bonjour,
>>
>> C'est mon premier message sur la liste, aussi ne m'en veuillez pas
>> trop si je pose des questions un peu nulles...
>> Voici mon problème :
>> j'ai un modèle décrivant des couches de données. Elles ont une
>> relation n à n avec les utilisateurs. J'ai crée correctement le champ
>> ManyToMany, et j'ai une table de relation id_couche, id_user. Dans le
>> module admin, l'ajout de couche contient la liste des utilisateurs
>> pouvant y accéder.
>> Or, j'ai beaucoup de couches. Et quand je crée un nouvel utilisateur
>> je n'ai par envie de les éditer toutes pour ajouter les droits à mon
>> nouvel utilisateur. Je voudrais donc avoir la liste des couches dans
>> l'édition d'un utilisateur. J'ai fait un UserProfile, mais je ne suis
>> pas arrivé à faire un champ ManyToMany utilisant la même table de
>> relation que pour mon modèle "couches".
>> Donc, la question est : peut-on agir symétriquement dans le module
>> admin sur une table n à n à partir des deux modèles qui lui sont liés ?
> Je comprend pas trop cette question; le plus simple serais que tu nous
> fasses voir ton modèle utilisé comme user profile; ce que tu veux avoir
> à l'air tout à fait faisable;
> Si je comprend, tu voudrais avoir dans l'edition user un champ
> personnalisé du style group (qui a une relation M2M avec user)?
>
> @+
>>
>> Merci !
>>
>> Guillaume
>>
>>
>>
>>
>> _______________________________________________
>> django mailing list
>> django _AT_ lists.afpy.org
>> http://lists.afpy.org/mailman/listinfo/django
>>
>>
>
>

Hors ligne

#4 25-03-2008 22:13:00

Eric SIMORRE
Membre
Inscription : 11-08-2010
Messages : 3

Re : manyToMany dans admin

Guillaume Sueur a écrit :
> Bonsoir,
>
> J'ai un peu modifié mes modèles, et supprimé le userProfile pour
> l'instant.
> Le principe, c'est qu'à partir de l'admin de mon premier modèle (les
> couches) j'associe à chaque couche un certain nombre d'utilisateurs
> (modèle User) via un champ ManyToMany et une table de relation.
> Jusqu'ici tout va bien.
> Mais j'aimerais retrouver cette même relation depuis l'admin de User,
> pour pouvoir directement associer des couches à un nouvel utilisateur,
> sans repasser par le formulaire de chacune des couches (malin non ? ;-)
> Donc il s'agit tout simplement (!) d'intégrer le choix multiple
> "couches" à l'admin de users. Et là, je coince.
La déclaration de ton modèle comme user profile n'est pas directement
utile pour ce que tu veux faire: ça sert juste à récupérer de façon
standard ton modèle à partir d'une instance user; tu as peut-être
simplement oublié l'option edit_inline sur ta foreign key user; quoique
je ne sais pas si ça fonctionne avec des associations m2m; on peut
contourner alors ça en remplaçant l'association m2m par 2 associations
m2one et un modèle intermédiaire.
Ou bien, il faut se faire à l'idée que la console admin si puissante
soit-elle ne peut pas tout, et il faut réaliser une interface d'ajout
utilisateur spécifique: avec les newforms ça doit être assez rapide on
doit s'en tirer avec une dizaine de lignes de code.

@+
>
> Guillaume
>
> Eric SIMORRE a écrit :
>> Guillaume Sueur a écrit :
>>> Bonjour,
>>>
>>> C'est mon premier message sur la liste, aussi ne m'en veuillez pas
>>> trop si je pose des questions un peu nulles...
>>> Voici mon problème :
>>> j'ai un modèle décrivant des couches de données. Elles ont une
>>> relation n à n avec les utilisateurs. J'ai crée correctement le
>>> champ ManyToMany, et j'ai une table de relation id_couche, id_user.
>>> Dans le module admin, l'ajout de couche contient la liste des
>>> utilisateurs pouvant y accéder.
>>> Or, j'ai beaucoup de couches. Et quand je crée un nouvel utilisateur
>>> je n'ai par envie de les éditer toutes pour ajouter les droits à mon
>>> nouvel utilisateur. Je voudrais donc avoir la liste des couches dans
>>> l'édition d'un utilisateur. J'ai fait un UserProfile, mais je ne
>>> suis pas arrivé à faire un champ ManyToMany utilisant la même table
>>> de relation que pour mon modèle "couches".
>>> Donc, la question est : peut-on agir symétriquement dans le module
>>> admin sur une table n à n à partir des deux modèles qui lui sont liés ?
>> Je comprend pas trop cette question; le plus simple serais que tu
>> nous fasses voir ton modèle utilisé comme user profile; ce que tu
>> veux avoir à l'air tout à fait faisable;
>> Si je comprend, tu voudrais avoir dans l'edition user un champ
>> personnalisé du style group (qui a une relation M2M avec user)?
>>
>> @+
>>>
>>> Merci !
>>>
>>> Guillaume
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> django mailing list
>>> django _AT_ lists.afpy.org
>>> http://lists.afpy.org/mailman/listinfo/django
>>>
>>>
>>
>>
>
>
>
>
>

Hors ligne

Pied de page des forums