This commit is contained in:
rolux 2011-11-01 12:03:23 +00:00
commit d78385fd9c
3 changed files with 10 additions and 9 deletions

View file

@ -28,9 +28,10 @@ class Command(BaseCommand):
def handle(self, **options):
offset = 0
chunk = options['all'] and 100 or options['items']
count = pos = models.Item.objects.count()
qs = models.Item.objects.exclude(itemId__startswith='0x')
count = pos = qs.count()
while options['all'] and offset <= count or offset < options['items']:
for i in models.Item.objects.all().order_by('modified')[offset:offset+chunk]:
for i in qs.order_by('modified')[offset:offset+chunk]:
print pos, i.itemId, i.modified
i.update_external()
pos -= 1

View file

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

View file

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