##// END OF EJS Templates
Search for image for every domain level starting from the lowest one. Cache this into memcached
Search for image for every domain level starting from the lowest one. Cache this into memcached

File last commit:

r1765:7a6a61e1 default
r1772:1342675d default
Show More
statistics.py
34 lines | 1.1 KiB | text/x-python | PythonLexer
from django.core.management import BaseCommand
from django.db.models import Count
from boards.models import Attachment
from boards.utils import get_domain
class Command(BaseCommand):
help = 'Gather board statistics'
def handle(self, *args, **options):
print('* Domains and their usage')
domains = {}
for attachment in Attachment.objects.exclude(url=''):
domain = get_domain(attachment.url)
if domain in domains:
domains[domain] += 1
else:
domains[domain] = 1
for domain in domains:
print('{}: {}'.format(domain, domains[domain]))
print('* Overall numbers')
print('{} attachments in the system, {} of them as URLs'.format(
Attachment.objects.count(),
Attachment.objects.exclude(url='').count()))
print('* File types')
mimetypes = Attachment.objects.filter(url='')\
.values('mimetype').annotate(count=Count('id'))\
.order_by('-count')
for mimetype in mimetypes:
print('{}: {}'.format(mimetype['mimetype'], mimetype['count']))