src/cm/api/handlers.py
changeset 328 2a6033ca510e
parent 300 7aaf5c0d6af4
child 335 74dbc5568bbd
equal deleted inserted replaced
327:d858c3bb07fe 328:2a6033ca510e
    10 from cm.views.create import CreateTextContentForm, create_text
    10 from cm.views.create import CreateTextContentForm, create_text
    11 from cm.views.texts import client_exchange, text_view_frame, text_view_comments, text_export
    11 from cm.views.texts import client_exchange, text_view_frame, text_view_comments, text_export
    12 from cm.views.feeds import text_feed
    12 from cm.views.feeds import text_feed
    13 from piston.utils import validate
    13 from piston.utils import validate
    14 from django.conf import settings
    14 from django.conf import settings
       
    15 from django.db.models import F
    15 
    16 
    16 URL_PREFIX = settings.SITE_URL + '/api'
    17 URL_PREFIX = settings.SITE_URL + '/api'
    17  
    18  
    18 class AnonymousTextHandler(AnonymousBaseHandler):
    19 class AnonymousTextHandler(AnonymousBaseHandler):
    19     type = "Text methods"
    20     type = "Text methods"
   440         query = Comment.objects.all()
   441         query = Comment.objects.all()
   441         if keys:            
   442         if keys:            
   442             query = query.filter(text_version__text__key__in=keys.split(','))
   443             query = query.filter(text_version__text__key__in=keys.split(','))
   443         if name:
   444         if name:
   444             query = query.filter(name=name)
   445             query = query.filter(name=name)
       
   446         query = query.filter(text_version__text__last_text_version__exact=F('text_version__id'))
   445         query = query.order_by('-created')
   447         query = query.order_by('-created')
   446         if limit:
   448         if limit:
   447             query = query[:int(limit)]
   449             query = query[:int(limit)]
   448         return query
   450         return query
   449     
   451