146 | | The keyword arguments `username` and `password` *must* be given explicitly. If an alternate authentication scheme is in use, the credentials required by that scheme can be provided instead of `username` and `password`. |
| 147 | The keyword arguments `username` and `password` *must* be given explicitly. If an alternate authentication scheme is in use, the credentials required by that scheme can be provided instead of `username` and `password`. |
| 148 | |
| 149 | == Generic relations have moved == |
| 150 | |
| 151 | In [5172], the various generic relation classes (!GenericForeignKey and !GenericRelation) have moved into the django.contrib.contenttypes module. This is because they will not work if contenttypes is not an installed app. Making the import path reflect the dependency should help remind people of this. |
| 152 | |
| 153 | Code using generic relations should change from saying things like |
| 154 | {{{ |
| 155 | #!python |
| 156 | generic_field = models.GenericRelation(SomeOtherModel) |
| 157 | }}} |
| 158 | to using |
| 159 | {{{ |
| 160 | #!python |
| 161 | from django.contrib.contenttypes import generic |
| 162 | ... |
| 163 | generic_field = generic.GenericRelation(SomeOtherModel) |
| 164 | }}} |
| 165 | |
| 166 | No database changes or other model changes are required. |