From: Stefan Koegl Date: Thu, 16 Sep 2010 17:30:59 +0000 (+0300) Subject: simplify API device list X-Git-Url: https://repo.or.cz/w/mygpo.git/commitdiff_plain/68498704049e01c744f942dfdb36cea48eb88761 simplify API device list --- diff --git a/mygpo/api/advanced/__init__.py b/mygpo/api/advanced/__init__.py index 58285e8f..ef3b45ea 100644 --- a/mygpo/api/advanced/__init__.py +++ b/mygpo/api/advanced/__init__.py @@ -361,18 +361,21 @@ def valid_episodeaction(type): @check_username @allowed_methods(['GET']) def devices(request, username): - devices = [] - for d in Device.objects.filter(user=request.user, deleted=False): - devices.append({ - 'id': d.uid, - 'caption': d.name, - 'type': d.type, - 'subscriptions': Subscription.objects.filter(device=d).count() - }) + devices = Device.objects.filter(user=request.user, deleted=False) + devices = map(device_data, devices) return JsonResponse(devices) +def device_data(device): + return { + 'id': d.uid, + 'caption': d.name, + 'type': d.type, + 'subscriptions': Subscription.objects.filter(device=d).count() + } + + @csrf_exempt @require_valid_user @check_username