django框架modelorM使用字典作为参数,保存数据的示例分析-创新互联
这篇文章主要介绍django框架model orM使用字典作为参数,保存数据的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
呼伦贝尔ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!具体如下:
假设有一个字典,里面已经有了所有相关信息,现在想利用这个字典作为参数,跟django model 结合,用很少的代码量保存数据,有什么简便方法,比如有如下定义的model:
from django.db import models class MyModel(models.Model): title=models.CharField(max_length=250) body= models.CharField(max_length=1000) ....
有一个字典:
data_dict = { 'title' : 'awesome title', 'body' : 'great body of text', }
如果按照常规的做法,可能采用如下方式去保存数据:
mymodel = MyModel() mymodel.title = data_dict['title'] mymodel.bdy = data_dict['body'] mymodel.save()
或者这样
mymodel = MyModel(title=data_dict['title'],body=data_dict['body']) mymodel.save()
其实是一样的,从dict里面去取得数据。
其实还有更简单的方法,直接传入这个dict数据,但前提是: 字典数据里面的key 字段一定要与model中定义的field 对应,否则就会报错.但事实上在封装dict数据的时候,完全可以对应的。用如下方法保存
mymodel = MyModel(**data_dict) mymodel.save()
如果还有一些其他的扩展字段,也是可以加在里面的,但注意. **data_dict 必须放在最后:
mymodel =MyModel(extra='hello', extra2='world', **data_dict) mymodel .save()
还可以这样做:
MyModel.objects.create(**data_dict)
这样就只是实现了django model保存dict ,并且还可以扩展
2013-01-04日更新:最近在一篇文章中发现,如果要用字典dict作为参数更新一个model的方法如下:
mymodel=MyModel.objects.get(pk=pk)#....找到唯一的一个,自行修改 mymodel.__dict__.update(data_dict ) mymodel.save()
当然也有用如下方式实现更新的:
MyModel.objects.filter(pk=pk).update(**data_dict )
以上是“django框架model orM使用字典作为参数,保存数据的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联成都网站设计公司行业资讯频道!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
新闻名称:django框架modelorM使用字典作为参数,保存数据的示例分析-创新互联
文章源于:http://myzitong.com/article/ddoech.html