将JSON字段分配给django中的模型变量

时间:2015-05-31 10:11:43

标签: django django-models django-rest-framework

我的json喜欢:

{
   "name": "Rahul",
   "2or4": 2,

}

在这里,

如何指定我的模型变量:twoOrFour到jason字段值" 2or4" 因为我们不能用变量开始变量。

我是django的新手。我正在为这个api使用dJango-rest-framework。

2 个答案:

答案 0 :(得分:1)

如果您正在使用djangorestframework,则需要在序列化程序中覆盖to_representation函数

http://www.django-rest-framework.org/api-guide/serializers/#overriding-serialization-and-deserialization-behavior

应该是这样的

def to_representation(self, obj)
    serialized_data = super(SerializerClassName, self).to_representation(obj)
    serialized_data["2or4"] = serialized_data["twoOrFour"]
    //Remove the old field name
    del serialized_data["twoOrFour"]
    return serialized_data

此代码应该在SerializerClassName是序列化程序的类名

的情况下工作

答案 1 :(得分:0)

您可以尝试将twoOrFour添加到JSON对象中。例如:

import json

data = {'name': 'Rahul', '2or4': 2}

data = json.loads(data) # convert to Python dict
data['twoOrFour'] = data['2or4'] # append twoOrFour
data = json.dumps(data) # convert back to JSON object

现在JSON对象有twoOrFour字段。希望它有效。