修改QueryDict的幾種方式
在正常的請求/響應周期中訪問時,request.POST和request.GET上的QueryDict將是不可變的.
要獲得可變版本,您需要使用QueryDict.copy()或者._mutable = True
用request.POST調用_mutable並修改為True
reuqets.POST._mutable = True
<QueryDict: {'title': ['水滸傳2'], 'price': ['12.00'], 'pub_date': ['2020-07-03'], 'pub_id': ['2'], 'authors': ['2', '4']}>
data = request.POST.copy()
xx = data.pop('authors') #此時就可以用刪除方法刪除querydict中的數據了
print(xx) #['2', '4']
將querydict類型轉換為普通字典
data = request.POST.dict()
<QueryDict: {'title': ['水滸傳2'], 'price': ['12.00'], 'pub_date': ['2020-07-03'], 'pub_id': ['2'], 'authors': ['2', '4']}>
{'title': '水滸傳2', 'price': '12.00', 'pub_date': '2020-07-03', 'pub_id': '1', 'authors': '4'}