findusers

This commit is contained in:
j 2011-10-31 23:30:02 +01:00
parent 5812ed0964
commit 34c2314df4
2 changed files with 7 additions and 7 deletions

View file

@ -7,10 +7,10 @@ from django.db.models import Q
def parseCondition(condition, user): def parseCondition(condition, user):
k = condition.get('key', 'name') k = condition.get('key', 'name')
k = { k = {
'email': 'user__email', 'firstseen': 'created',
'firstseen': 'user__created', 'lastseen': 'last_login',
'lastseen': 'user__last_login', 'user': 'username',
'user': 'user__username', 'name': 'username',
}.get(k, k) }.get(k, k)
v = condition['value'] v = condition['value']
op = condition.get('operator') op = condition.get('operator')
@ -30,9 +30,9 @@ def parseCondition(condition, user):
key = str(key) key = str(key)
if exclude: if exclude:
q = ~Q(**{k: v}) q = ~Q(**{key: v})
else: else:
q = Q(**{k: v}) q = Q(**{key: v})
return q return q
def parseConditions(conditions, operator, user): def parseConditions(conditions, operator, user):

View file

@ -417,6 +417,7 @@ def order_query(qs, sort):
'firstseen': 'date_joined', 'firstseen': 'date_joined',
'lastseen': 'last_login', 'lastseen': 'last_login',
'username': 'username', 'username': 'username',
'name': 'username',
}.get(e['key'], 'profile__%s'%e['key']) }.get(e['key'], 'profile__%s'%e['key'])
if key == 'profile__numberoflists': if key == 'profile__numberoflists':
qs = qs.annotate(numberoflists=Sum('lists')) qs = qs.annotate(numberoflists=Sum('lists'))
@ -424,7 +425,6 @@ def order_query(qs, sort):
order = '%s%s' % (operator, key) order = '%s%s' % (operator, key)
order_by.append(order) order_by.append(order)
if order_by: if order_by:
print order_by
#user table does not support this #user table does not support this
#qs = qs.order_by(*order_by, nulls_last=True) #qs = qs.order_by(*order_by, nulls_last=True)
qs = qs.order_by(*order_by) qs = qs.order_by(*order_by)