在我的Django应用程序中,我需要将JSon从前端编写到models.py中的表中。执行此操作的第一步是将Json转换为字典。我的问题是如何将该字典直接写入models.py表?如果某些字段应该写入一个表而某些字段应该写入任何其他表怎么办?是否有可能或有另一种解决方案?请提出解决方案。
models.py中有两个表称为chart,columnChart,chart_name和chart_description应写入图表表,而x_axis_mapping和y_axis_mapping应写入columnChart表。 所有字段都在一个名为json_data的对象中接收。 json_data可以转换为字典。那么下一步又是什么呢?
提前致谢。
答案 0 :(得分:2)
将字典直接写入Model表的简单方法是使用django ORM进行python扩展
例如:
myitems = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
mymodel = MyModel(**myitems)
mymodel.save()
对于多个模型/表格,您可以轻松过滤字典,然后在特定的模型/表格中使用它。
例如:
myitems1 = dict((k,myitems[k]) for k in ('key1',) if k in myitems)
mymodel1 = MyModel1(**myitems1)
mymodel1.save()
myitems2 = dict((k,myitems[k]) for k in ('key2', 'key3') if k in myitems)
mymodel2 = MyModel2(**myitems2)
mymodel2.save()
答案 1 :(得分:2)
我建议调查http://www.django-rest-framework.org/
该框架处理序列化,反序列化和处理各种输入类型以及构建RESTful API。序列化程序也遵循Django的DRY哲学。