django转json格式:
models表下面加:
def toJSON(self):
return json.dumps(dict([(attr, getattr(self , attr))for attrin [f.namefor fin self._meta.fields]]), default=JsonDefault,ensure_ascii=False)
def toDict(self):
return dict([(attr, getattr(self , attr))for attrin [f.namefor fin self._meta.fields]])
碰到的问题:
1:第一个时间类型不能转换
2:第二个返回的json中文是utf-8格式
在一个py文件里面定义一个:
def JsonDefault(obj):
if isinstance(obj, datetime.datetime):
return obj.strftime('%Y-%m-%d %H:%M:%S')
else:
raise TypeError('%r is not JSON serializable' % obj)
然后在转化json()后转换一下:
return HttpResponse(json.dumps(result, default=JsonDefault(支持时间类型格式), ensure_ascii=False(就支持中文)))