Example #1
0
 def get(self, request, *args, **kwargs):
     contexts = Context.get_visible(request.user)
     # Get some prefetched values to minimize database workload
     contexts = contexts.prefetch_related('locations_available')
     # Turn contexts into a serialized list
     serializer = ContextSerializer(contexts, many=True)
     return Response(serializer.data)
Example #2
0
 def get(self, request, *args, **kwargs):
     # Filter by GET parameters
     params = dict(request.query_params)
     if 'is_visible' in params:
         params['is_visible'] = bool(params['is_visible'][0])
     contexts = Context.get_visible(request.user)
     contexts = contexts.filter(**params)
     # Get some prefetched values to minimize database workload
     contexts = contexts.prefetch_related('locations_available')
     # Turn contexts into a serialized list
     serializer = ContextSerializer(contexts, many=True)
     return Response(serializer.data)
Example #3
0
def create_context(name):
    if name[0] == '@':
        name = name[1:]
    slug = slugify(name)
    c = Context(name=name, slug=slug)
    c.save()
Example #4
0
 def get(self, request, *args, **kwargs):
     contexts = Context.get_visible(request.user)
     serializer = ContextSerializer(contexts, many=True)
     return Response(serializer.data)