为了账号安全,请及时绑定邮箱和手机立即绑定

django 怎么根据字段不同插入数据 表述不清,请看正文

django 怎么根据字段不同插入数据 表述不清,请看正文

小唯快跑啊 2019-02-21 07:26:08
伪代码 class TABLE(models.Model): itemA = models.FloatField(default=0) itemB = models.FloatField(default=0) 接收到json串 { 'itemA':100, 'itemB':200 } 我后台接收到数据之后。怎么根据传来字典的对应关系,给相应的字段插入数据呢? django的ORM,默认支持的是 tableObj = TABLE.objects.id(id=1) tableObj.itemA = value 我想写成下面这种,可是不好使额。不支持额。 # data为接口接收到的数据 for key,value in data: tableObj.key = value tableObj.save() 现在这么写,超级丑。。。 for key,value in data: if key == "itemA": tableObj.itemA= value elif key == "itemB": tableObj.itemB= value tableObj.save() 请教各位django大神,怎么写优雅点呢。。。
查看完整描述

3 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

for key, val in data.items():
    if hasattr(tableObj, key):
        setattr(tableObj, key, val)
tableObj.save()
查看完整回答
反对 回复 2019-03-04
  • 3 回答
  • 0 关注
  • 594 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信