Author: clong
Date: 2006-09-12 10:55:49 -0500 (Tue, 12 Sep 2006)
New Revision: 3753

Modified:
   django/branches/per-object-permissions/django/contrib/auth/models.py
Log:
[per-object-permissions] Fixes MySQL error caused by when a user is not a 
member of a group

Modified: django/branches/per-object-permissions/django/contrib/auth/models.py
===================================================================
--- django/branches/per-object-permissions/django/contrib/auth/models.py        
2006-09-12 15:04:29 UTC (rev 3752)
+++ django/branches/per-object-permissions/django/contrib/auth/models.py        
2006-09-12 15:55:49 UTC (rev 3753)
@@ -80,12 +80,15 @@
                                           owner_id=user.id, 
permission=perm.id, 
                                           model_ct=model_ct
                                           ).values('model_id')   
-        user_group_list = [g['id'] for g in 
user.groups.select_related().values('id')]
-        group_model_ids = 
RowLevelPermission.objects.filter(owner_ct=ContentType.objects.get_for_model(Group).id,
-                                          owner_id__in=user_group_list,
-                                          model_ct = model_ct
-                                          ).values('model_id')
-        id_list = [o['model_id'] for o in user_model_ids] + [o['model_id'] for 
o in group_model_ids]
+        id_list = [o['model_id'] for o in user_model_ids]        
+        
+        user_group_list = [g['id'] for g in 
user.groups.select_related().values('id')]        
+        if user_group_list:
+            group_model_ids = 
RowLevelPermission.objects.filter(owner_ct=ContentType.objects.get_for_model(Group).id,
+                                                  owner_id__in=user_group_list,
+                                                  model_ct = model_ct
+                                                  ).values('model_id')
+            id_list.append([o['model_id'] for o in group_model_ids])
         return id_list
 
 class RowLevelPermission(models.Model):


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-updates
-~----------~----~----~----~------~----~------~--~---

Reply via email to