我有一个类与APIView,它接受请求。从那里,我传递请求到2个不同的方法,但当我打印数据从第二个函数,它是由第一个方法修改。
样本
class events(APIView):
def post(self, request):
data = request.data
self.tinybird(data)
self.events(data)
字符串
我希望在两个方法中有相同的数据副本,但tinyBird
方法将一行更改为del product['options']
,因此我无法在events()方法中获得product['options']
。由于我将数据分别传递给两个函数,第一个函数的数据修改如何影响第二个函数的数据。
努力
我试图将请求的副本发送到每个功能或一个功能,但仍然存在相同的问题。
data1 = request.copy()
data2 = request.copy()
self.tinybird(data1)
self.events(data2)
型
仍然data2 throw keyerror on data2“选项”]
1条答案
按热度按时间6gpjuf901#
我认为这个问题是因为即使您将request.data的副本传递给这两个方法,它们仍然引用同一个字典,而不是它的实际副本。
字符串