Python从结果中删除其他键

时间:2015-07-20 10:44:41

标签: python

您好我正在尝试使用龙卷风框架的python和mongodb。我有进入模块,用户可以在学术和运动领域插入学生的数据。我正在使用PostMan来验证代码。

def post(self):
    print(json_encode(self.body))
    db.SearchLog.insert(self.body)
    default = 'None'
    Date = self.body.get('Date', default)
    Reg = self.body.get('Reg', default)
    Name = self.body.get('Name', default)
    cursor = db.studentDetails.find({'Reg': Reg, 'Name': Name})
    value = yield cursor.count()
    if value is 0:
        db.studentDetails.insert(self.body)

    else:
        self.write("{"'"success"'": 1, "'"data"'":[")
        for document in (yield cursor.to_list(length=100)):
            self.write(format(JSONEncoder().encode(document)))
            c = 1
            if (c < value):
                c+=1
                value = value - 1
                self.write(",")
        self.write("]}")

代码工作正常。但问题在于输出的显示方式。

输出看起来像这样

{"success": 1, "data":[{"_id": "55acc2205d8882ef8a667d34", "Reg": "11mt", "Name": "Alex", "Total": "98"}]}

{"data": null, "status": "success"}

由于存在两个数据,我无法获得值Name,Total,Reg。

我有没有办法发送[{"_id": "55acc2205d8882ef8a667d34", "Reg": "11mt", "Name": "Alex", "Total": "98"}]而不是'null'。

我的输出应该像{"data":"[{"_id": "55acc2205d8882ef8a667d34", "Reg": "11mt", "Name": "Alex", "Total": "98"}]" , "status": "success"}

额外的{"data": null, "status": "success"}我不知道这是怎么回事。

0 个答案:

没有答案