Anotaciones por Pablo Caro
  • Inicio
  • Categorías
  • Tags
  • Archivos

Decorador vista ajax

Para obligar que una vista django sea llamada sólo mediante llamamas AJAX.

def ajax_required(f):
    """
    AJAX request required decorator
    use it in your views:

    @ajax_required
    def my_view(request):
        ....

    """
    def wrap(request, *args, **kwargs):
        if not request.is_ajax():
            return HttpResponseBadRequest()
        return f(request, *args, **kwargs)
    wrap.__doc__ = f.__doc__
    wrap.__name__ = f.__name__
    return wrap

Un posible ejemplo de uso:

@login_required
@ajax_required
def update_starts(request):
    ...
    return JsonResponse({'result': 'ok'})

¿Te gustó esta anotación? Compártela en: Twitter ❄ Facebook ❄ Google+ ❄ Email

¿Qué te parece? ¿Piensas que olividé algo? ¿Poco claro? Deja abajo tus comentarios.

Comentarios
comentarios proporcionados por Disqus

Publicado

nov 21, 2014

Categoría

Programación

Tags

  • django 5
  • python 18

Contacta conmigo

  • Anotaciones por Pablo Caro - Anotaciones
  • Anotaciones de Pablo Caro is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
  • Proporcionados por Pelican. Theme: Elegant por Talha Mansoor