Le 13 mai 2012 19:51, Christophe Narbonne <[email protected]> a écrit :

> Après, tel que tu décris ton modèle, un country manager ne peut avoir
> qu'un pays, ce qui est contradictoires avec ton emplois du pluriel plus
> haut.
>
> Bon reprennons tes points que je puisse construire ma critique que
> j'espère constructive:
>
>    - Une classe CountryManager qui se baserait sur la classe "User" et
>    auquel je rajouterais notamment un attribut "Pays"
>    - Une classe User avec un attribut "Pays"
>
>
Oui en effet, je suis passé en m2m depuis :)


> Le plus souvent, il est recommendé d'utiliser des profils mes les sagouins
> de mon espèce utilisent le "monkey-patching" pour ajouter des champs à User.
>
> http://www.turnkeylinux.org/blog/django-profile
>
> Pour ma part, je ne trouve pas ça plus extensible qu'un genou de grand
> mère dans le sens ou faire cohabiter sur un site plusieurs application
> utilisant des profil relève du perieux (qui plus est la solution
> alternative est plus performante).
>
> L'autre solution simplifie des choses mais n'est ni standart, ni
> documentée. De plus, elle est pas gérée par south.
>
> elle consiste à ajouter dans ton models.py:
>
> # User Monkey patch
> models.ManyToMany(Countries, null=True, related_name="admins",
> blank=True).contribute_to_class(
>     User, "myapp_countries")
>
> L'héritage peut être pertinant dans certains contexte néanmoins, tant que
> l'orm peut s'en passer. Après si c'est vraiment la solution que tu retiens,
>
> http://pypi.python.org/pypi/django-model-utils
>
> Regarde le InheritanceManager, tu trouvera peut être ça sympatique.
>

Merci, je ne connaissais pas. Je me mets ça sous le coude.

>
> Enfin, Créer tant de tables c'est autant de jointure pour arriver à lier
> les utilisateurs aux pays administrés.
>

Certes mais bon, la perf brute n'est pas mon objectif premier pour cette
application ^^



> Bonne chance.
>
>
Merci et j'ai presque fini ; plus que les envois de mails à gérer :)

Nicolas
-- 
Nicolas Steinmetz
http://www.steinmetz.fr - http://nicolas.steinmetz.fr/
_______________________________________________
django mailing list
[email protected]
http://lists.afpy.org/mailman/listinfo/django

Répondre à