magic-removal: Fixed some bugs in User.get_group_permissions()

git-svn-id: http://code.djangoproject.com/svn/django/branches/magic-removal@1843 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Adrian Holovaty 2006-01-06 22:18:50 +00:00
parent 4e713af133
commit c4076a4314
1 changed files with 7 additions and 7 deletions

View File

@ -1,5 +1,5 @@
from django.core import validators
from django.db import models
from django.db import backend, connection, models
from django.models import core
from django.utils.translation import gettext_lazy as _
import datetime
@ -130,7 +130,7 @@ class User(models.Model):
"Returns a list of permission strings that this user has through his/her groups."
if not hasattr(self, '_group_perm_cache'):
import sets
cursor = db.cursor()
cursor = connection.cursor()
# The SQL below works out to the following, after DB quoting:
# cursor.execute("""
# SELECT p.package, p.codename
@ -144,11 +144,11 @@ class User(models.Model):
WHERE p.%s = gp.%s
AND gp.%s = ug.%s
AND ug.%s = %%s""" % (
db.quote_name('package'), db.quote_name('codename'),
db.quote_name('auth_permissions'), db.quote_name('auth_groups_permissions'),
db.quote_name('auth_users_groups'), db.quote_name('id'),
db.quote_name('permission_id'), db.quote_name('group_id'),
db.quote_name('group_id'), db.quote_name('user_id'))
backend.quote_name('package'), backend.quote_name('codename'),
backend.quote_name('auth_permissions'), backend.quote_name('auth_groups_permissions'),
backend.quote_name('auth_users_groups'), backend.quote_name('id'),
backend.quote_name('permission_id'), backend.quote_name('group_id'),
backend.quote_name('group_id'), backend.quote_name('user_id'))
cursor.execute(sql, [self.id])
self._group_perm_cache = sets.Set(["%s.%s" % (row[0], row[1]) for row in cursor.fetchall()])
return self._group_perm_cache