Kaydet (Commit) 1be31c32 authored tarafından Aymeric Augustin's avatar Aymeric Augustin

Fixed #21875 -- Clarified that get_user_model() only works at run time.

Thanks Benjamin White for the report.
üst daaf6cf9
...@@ -869,6 +869,10 @@ regressions cannot be ruled out. You may encounter the following exceptions: ...@@ -869,6 +869,10 @@ regressions cannot be ruled out. You may encounter the following exceptions:
will also trigger this exception. The ORM cannot function properly until all will also trigger this exception. The ORM cannot function properly until all
models are available. models are available.
Another common culprit is :func:`django.contrib.auth.get_user_model()`. Use
the :setting:`AUTH_USER_MODEL` setting to reference the User model at import
time.
* ``ImportError: cannot import name ...`` This happens if the import sequence * ``ImportError: cannot import name ...`` This happens if the import sequence
ends up in a loop. ends up in a loop.
......
...@@ -426,6 +426,10 @@ different User model. ...@@ -426,6 +426,10 @@ different User model.
post_save.connect(post_save_receiver, sender=settings.AUTH_USER_MODEL) post_save.connect(post_save_receiver, sender=settings.AUTH_USER_MODEL)
Generally speaking, you should reference the User model with the
:setting:`AUTH_USER_MODEL` setting in code that is executed at import
time. ``get_user_model()`` only works once Django has imported all models.
Specifying a custom User model Specifying a custom User model
------------------------------ ------------------------------
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment