如何使用序列化程序现有值添加一些自定义值?

时间:2017-08-07 05:32:33

标签: python django django-rest-framework

我有一个序列化程序,它返回(标签)日期和(值)日期范围内相应日期的注册用户总数。现在我想将值添加到0,表示没有注册用户并返回的日期这序列化。 这是我的序列化程序的输出

{
    "report_title": "Registration Report",
    "total": 5,
    "data": [
      {
        "label": "2017-07-21",
        "value": 2
      },
      {
        "label": "2017-07-24",
        "value": 2
      },
      {
        "label": "2017-08-04",
        "value": 1
      }
    ],
    "start_date": "2017-07-07",
    "end_date": "2017-08-07"
}

1 个答案:

答案 0 :(得分:1)

您有两个选择

  1. 不是修改序列化程序的数据,而是在序列化发生之前尝试修改它
  2. 通过json.loads(serialized_data)转换为python对象并修改

    import json
    data = json.loads(<your_serialized_data>)
    data["start_date"] = <Assign_watever_value_you_want>