如何将新数据添加到request.data?

时间:2019-04-16 12:02:25

标签: python django

我想要实现的是在String beforexpath = "/html/body/div/div/div[3]/div/div[2]/div/div[1]/div/span[3]/div[1]/div[1]/table/tbody/tr["; String afterxpath = "]/td[7]"; for (int i =1 ; i<= 10 ; i++) { String actualXpath = beforexpath+i+afterxpath; WebElement element = d1.findElement(By.xpath(actualXpath)); System.out.println(element.getText()); Thread.sleep(5000); if(element.getText().equals("success")) { System.out.println("first successful file :" + element.getText()+ " founded at position : " + i); } } 上添加sid,以便可以将其添加到序列化程序中,但是我不确定如何实现。我可以以某种方式附加它还是只为request.data使用一个单独的序列化程序?

sid

2 个答案:

答案 0 :(得分:2)

你可以

serializer = MessageSerializer(data={**request.data, 'sid': new_message.sid})

答案 1 :(得分:0)

request.data只是一本字典。您只需使用新项目进行更新。

sid = new_message.sid
data = request.data
data["sid"] = sid
serializer = MessageSerializer(data)

如果您使用的是request.POSTrequest.GET,那么问题就会一直存在,因为它们是不可变的对象。在这种情况下,您首先要创建一个副本,然后使用新商品来更新它,从而消除不变性。

sid = new_message.sid
data = request.POST.copy()  #data is now a mutable object.
data["sid"] = sid
serializer = MessageSerializer(data)