2017-10-10 87 views
2

在服務器發送這樣的數據:如何從查詢集django中獲取所有數據的特定列表?

Object { categoryes: Array[2], brands: Array[2], discount_list: "all", category_slug: "accessories", category_of_relationsheep: "m" } 

,如果我在服務器端打印request.POST我得到這個:

<QueryDict: {'categoryes[]': ['Accessories', 'Bands'], 'brands[]': ['Nike', 'HBO'], 'discount_list': ['all'], 'csrfmiddlewaretoken': ['S7MXVEdQLd6u0fr4FugEwlupa45oChmw3TeItB4BEUHUHSsxrmVRuAcAhFxYQfpk'], 'category_slug': ['accessories'], 'category_of_relationsheep': ['m']}> 

熱我能​​得到一個列表,例如「categoryes []」(但爲什麼叫這樣用括號)

確定的,如果我這樣做:? 打印(request.POST.get(「categoryes []」)),它會給唯一的最後一個對象,

如何獲取完整列表?具體如cotegoryes?如果做出這樣

for keys, values in request.POST.items(): 
    print(values) 

其打印我的所有值在這個字典,但不知從哪裏該值知道嗎?如果我有這樣的:

for keys, values in request.POST.items(): 
     if 'categoryes[]' == keys: 
      print(values) 

它給有關同一隻有一個對象,以categoryes但在這個名單超過1對象

回答

1

當訪問request.GETrequest.POST,你沒有得到一個普通的字典,你會得到一個QueryDict對象。作爲字典訪問時,它將返回鍵的最後一個值。如果你想完整列表,請使用getlist方法,例如:

request.POST.getlist("somekey") 

返回與所請求的關鍵數據的列表。

相關問題