views.py 966 B

12345678910111213141516171819202122
  1. from json import dumps as json_dumps
  2. from django.core.urlresolvers import reverse
  3. from django.http import HttpResponse
  4. from django.shortcuts import redirect
  5. from django.template import RequestContext
  6. def redirect_message(request, message, type='info', owner=None):
  7. request.messages.set_flash(message, type, owner)
  8. return redirect(reverse('index'))
  9. def json_response(request, json={}, status=200, message=None):
  10. json.update({'code': status, 'message': unicode(message)})
  11. response = json_dumps(json, sort_keys=True, ensure_ascii=False)
  12. return HttpResponse(response, content_type='application/json', status=status)
  13. def ajax_response(request, template=None, macro=None, vars={}, json={}, status=200, message=None):
  14. html = ''
  15. if macro:
  16. html = request.theme.macro(template, macro, vars, context_instance=RequestContext(request));
  17. return json_response(request, json.update({'html': html}), status, message)