﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
20244	PermissionsMixin should define related name of groups and user_permissions related name	Benjamin Dauvergne	Andrew Godwin	"Third party expecting a group.user_set or permission.user_set reverse relationships are broken by custom user model whose class name is not 'User'.

An easy work around would be to add a related_name='user_set' to the definitions of those two fields.

{{{
diff --git a/django/contrib/auth/models.py b/django/contrib/auth/models.py
index 5709d25..e0a2dba 100644
--- a/django/contrib/auth/models.py
+++ b/django/contrib/auth/models.py
@@ -294,10 +294,12 @@ class PermissionsMixin(models.Model):
     groups = models.ManyToManyField(Group, verbose_name=_('groups'),
         blank=True, help_text=_('The groups this user belongs to. A user will '
                                 'get all permissions granted to each of '
-                                'his/her group.'))
+                                'his/her group.'),
+        related_name='user_set')
     user_permissions = models.ManyToManyField(Permission,
         verbose_name=_('user permissions'), blank=True,
-        help_text='Specific permissions for this user.')
+        help_text='Specific permissions for this user.',
+        related_name='user_set')
 
     class Meta:
         abstract = True

}}}
"	Bug	closed	contrib.auth	1.5	Release blocker	fixed		marc.tamlyn@… benjaoming@… preston@…	Accepted	0	1	0	0	0	0
