【问题标题】:python-django-restframwork deserializerpython-django-rest 框架反序列化
【发布时间】:2018-01-25 15:49:58
【问题描述】:

我有一个这样的表格。

[{'XPos': {'$': 128.604314661},
  'YPos': {'$': 35.8662354972},
  'clCd': {'$': 1},
  'drTotCnt': {'$': 545},
  'estbDd': {'$': 19100907}
},
 {'XPos': {'$': 128.096026987},
  'YPos': {'$': 35.1753899647},
  'clCd': {'$': 1},
  'drTotCnt': {'$': 326},
},
 {'XPos': {'$': 127.050741243},
  'YPos': {'$': 37.5937747637},
  'clCd': {'$': 1},
  'drTotCnt': {'$': 412},
  'estbDd': {'$': 19711005}
},
 {'XPos': {'$': 128.582521394},
  'YPos': {'$': 35.8701796577},
  'clCd': {'$': 1},
  'drTotCnt': {'$': 427}
},
 {'XPos': {'$': 126.884639554},
  'YPos': {'$': 37.4911811753},
  'clCd': {'$': 1},
  'drTotCnt': {'$': 498},
  'estbDd': {'$': 19830831}
},
 {'XPos': {'$': 126.824997324},
  'YPos': {'$': 37.3188581763},
  'clCd': {'$': 1},
  'drTotCnt': {'$': 281},
  'estbDd': {'$': 19860101},
 }]

并使用 django-rest-framework 反序列化器,我想将该数据插入到我的数据库中。

但是,我有一些问题。

  1. 我只需要'XPos','YPos','estbDd'值。
  2. 在将 xml 转换为 json 时,创建了更多的嵌套结构。 (看“$”)
  3. 某些数据没有“estbDd”字段值。

如何过滤这些数据并输入到我的数据库中?

http://www.django-rest-framework.org/api-guide/serializers/

我引用了那个网站。

【问题讨论】:

    标签: python json django django-rest-framework


    【解决方案1】:

    在您的情况下,您可以创建一个新字典并将其保存到数据库中:

    # assuming your list is calles 'my_list'
    for item in my_list:
        if hasattr(item, 'estbDd'):
            my_model = MyModel()
            my_model.XPos = item['XPos']['$']
            my_model.YPos = item['YPos']['$']
            my_model.estbDb = item['estbDb']['$']
            my_model.save()
    

    这能解决你的问题吗?

    【讨论】:

      猜你喜欢
      • 2013-02-03
      • 1970-01-01
      • 1970-01-01
      • 2021-04-08
      • 2015-06-29
      • 2020-03-22
      • 2015-10-29
      • 2017-02-09
      • 2015-07-06
      相关资源
      最近更新 更多