1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- #coding=utf-8
- """JSON helper functions"""
- import traceback
- import sys
- import thread
- from django.conf import settings
- from django.http import JsonResponse as DJR
- #from exceptionhandler import post_traceback
- def JsonResponse(data=None):
- ret = {
- 'code': 0,
- 'data': data,
- }
- return DJR(ret, safe=False)
- def JsonError(error_string):
- # if not 'dev' in settings.LICENSE_KEY:
- # exc_type, exc_value, exc_traceback_obj = sys.exc_info()
- # if exc_type and exc_type.__name__ != 'ValueError':
- # trace = traceback.format_exc()
- # try:
- # thread.start_new_thread(post_traceback, (exc_value, trace,))
- # except:
- # print "Error: unable to start report exception thread"
- # #print '******', exc_type.__name__, type(exc_type.__name__)
- data = {
- 'code': 1,
- 'msg': error_string
- }
- return DJR(data, safe=False, json_dumps_params={'ensure_ascii':False})
- def ForbiddenResponse():
- data = {
- 'code': 1001,
- 'msg': u'拒绝访问',
- }
- return DJR(data, safe=False)
- def DataGridResponse(data, total, more=None):
- result = {
- 'code': 0,
- 'count':total,
- 'data': data
- }
- if more:
- result['more'] = more
- return DJR(result, safe=False)
- def EasyuiDataGridResponse(data, total):
- result = {
- 'total':total,
- 'rows': data,
- }
- return DJR(result, safe=False)
- # For backwards compatability purposes
- JSONResponse = JsonResponse
- JSONError = JsonError
- DataGridJSONResponse = DataGridResponse
- ForbiddenJSONResponse = ForbiddenResponse
|