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'})
¿Qué te parece? ¿Piensas que olividé algo? ¿Poco claro? Deja abajo tus comentarios.
comentarios proporcionados por Disqus