JSON使用Django为类建模 [英] JSON to model a class using Django

查看:91
本文介绍了JSON使用Django为类建模的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试获取像这样的JSON对象:

I'm trying to get a JSON object like:

{
    "username": "clelio",
    "name": "Clelio de Paula",
}

并将其转换为:

  class User(models.Model):

     name = models.CharField(max_length=30)
     username = models.CharField(max_length=20)

     def jsonToClass(s):

       aux = json.dumps(s, self)

       self.name = aux['name']
       self.id = aux['id']

所以我尝试使用simplejson和一种称为jsonToClass()的方法:

So I tried to use the simplejson and one method called jsonToClass():

  >>> import simplejson as json
  >>> u1 = User()
  >>> u1.jsonToClass(face)
  >>> u1.save()

这不起作用.做我想做的最简单的方法是什么?

This doesn't work. What is the easiest method to do what I want?

推荐答案

您可能想看看Django的

You probably want to look at Django's (de)serialization framework. Given JSON like:

[
  {
    "model": "myapp.user",
    "pk": "89900",
    "fields": {
      "name": "Clelio de Paula"
    }
  }
]

您可以这样保存它:

from django.core import serializers
for deserialized_object in serializers.deserialize("json", data):
    deserialized_object.save()

请注意,我相信您必须使用Django序列化格式才能使用此方法,因此您可能必须相应地调整JSON.

Note that I believe you have to use the Django serialization format to use this method, so you might have to adjust your JSON accordingly.

这篇关于JSON使用Django为类建模的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆