#20394 closed Cleanup/optimization (fixed)
parameter ``user_id`` of the custom ``get_user`` method has to be the pk of User
| Reported by: | Owned by: | nobody | |
|---|---|---|---|
| Component: | Documentation | Version: | 1.5 |
| Severity: | Normal | Keywords: | misleading, ambiguous, authentication |
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | yes | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | yes | UI/UX: | no |
Description
parameter user_id of the custom get_user method has to be the pk of User, while the documentation's statement is quite misleading.
The original documentation says "The get_user method takes a user_id – which could be a username, database ID or whatever – and returns a User object." https://docs.djangoproject.com/en/1.5/topics/auth/customizing/#writing-an-authentication-backend
It misguides many newbies like me.
In fact, the login function in contrib.auth stores user.pk in session, then get_user function in contrib.auth gets user.pk in session and then passes it to your custom get_user as user_id.
Which means, user_id parameter in your custom get_user has to be the primary key of User object, too.
Change History (3)
comment:1 by , 13 years ago
comment:2 by , 13 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
https://github.com/django/django/pull/1053