关于Django model 与json序列的转换

来源:互联网 发布:淘宝上怎么退货 编辑:程序博客网 时间:2024/06/05 10:39


报错 

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})




0 0
原创粉丝点击