Question

Je applications des utilisateurs et des projets et je voudrais définir une autre application appelée rôles pour l'extension django-auth pour base par projet.

je définissais ProjectMembership dans l'application des rôles en tant que modèle de la relation ManyToMany personnalisée. Mais comment puis-je définir le champ M2M utilisateur ou d'un modèle de projet avec déclaration de through?

question est donc peut-on définir le champ de modèle à partir d'une autre application?

Était-ce utile?

La solution

Je ne pense pas qu'il est possible, et même s'il est possible, alors il est à mon avis une très mauvaise solution.

Je pense que la meilleure option est de créer le modèle ProjectMembership avec deux FK de, l'un à l'utilisateur et un à projet. Ensuite, vous avez un Manuel relation M2M, et vous ne pouvez pas utiliser tout beau Django propose pour travailler avec les relations M2M.

Si vous voulez cependant ces caractéristiques (ils ne sont pas nécessaires), vous devez modifier soit l'utilisateur ou le modèle du projet.

Autres conseils

Oui, vous pouvez, django crée automatiquement la relation inverse pour vous. Utilisez related_name pour lui donner un nom!

Modification (patching argent) le modèle User est pas une bonne idée. Si vous voulez prolonger, soit le faire via:

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top