您的位置:首页 > Web前端 > JavaScript

关于Django model 与json序列的转换

2014-03-21 14:57 274 查看
报错 


MyUser is not JSON serializable

参考如下
http://www.yihaomen.com/article/python/279.htm#2189048-tsina-1-4101-9798c04a6d88069852106b36090cb63b://

在模型类中加入如下代码 将model转换为json

class MyUser(models.Model):

def toJSON(self):
fields = []
for field in self._meta.fields:
fields.append(field.name)

d = {}
import datetime
for attr in fields:
if isinstance(getattr(self, attr),datetime.datetime):
d[attr] = getattr(self, attr).strftime('%Y-%m-%d %H:%M:%S')
elif isinstance(getattr(self, attr),datetime.date):
d[attr] = getattr(self, attr).strftime('%Y-%m-%d')
else:
d[attr] = getattr(self, attr)

import json
return json.dumps(d)


使用时将json序列转成model

def text(request):
if 'user' in request.session:
user = request.session['user']
user = MyUser(**json.loads(user))      #将json序列转换成model
event = UserEvent(user=user,ETime=date.today())
event.save()
else:
user = None
return render_to_response('welcome.html',{'user':user})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  django json python