-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
User model #929
User model #929
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
C'est beaucoup de travail que je vois là et ça fait assez peur. Je pose quelques questions pour essayer de suivre un peu ce qui a été fait et voir si je comprend bien la review que j'ai fait
core/migrations/0040_alter_user_options_user_user_permissions_and_more.py
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool que tu démarres ce taf, ça va effectivement simplifier pas mal de trucs!
1934db0
to
05d23cc
Compare
3fcc460
to
aaaa225
Compare
8d8ba1a
to
5b361c9
Compare
5b361c9
to
a7b1406
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ça fait peur quand même
Habituellement, le changement de modèle User par défaut se fait en héritant d'
AbstractUser
(qui hérite lui-même d'AbstractBaseUser
et dePermissionMixin
), mais notre modèle hérite d'AbstractBaseUser
. On perd donc lePermissionMixin
. Ca nous place en grosse partie hors des clous du système d'auth de django. Et c'est vraiment chiant à gérer.L'idée initiale était de remplacer le système de permissions de Django, plutôt que de construire quelque chose en plus. Ca se voit, d'ailleurs. Notre modèle User est une grosse duplication d'AbstractUser ; il hérite juste pas de PermissionMixin.
Eh bah bilan, l'idée était pas terrible. Notre propre interface est pas toujours respectée (sérieusement, regardez-moi le foutoir des permissions de la table des clubs). Et la vérification des droits n'est pas très efficace, voire est carrément inefficace (O(n) sur des ListView, tmtc).
Bref, on va tenter de se remettre sur les rails. Et pour commencer ça, on va revenir sur
AbstractUser
.C'est juste la toute première étape, mais c'est déjà un gros truc. D'autres PRs suivront pour la refonte du système de perms.