0
我使用Django的REST框架,並有這樣的代碼做一個PUT電話:獲取JSON數據的QueryDict
$.ajax({
url: '/api/v1/order/'+orderid+'/',
type: 'PUT',
data: { book: true }
});
,這是處理的觀點,即:
@api_view(['PUT', 'POST'])
@authentication_classes((SessionAuthentication, TokenAuthentication, BasicAuthentication))
@permission_classes((IsAuthenticated,))
def api_orderbook(request, orderid):
logger.debug(request.data)
if request.method == 'PUT' and request.data.get("book") == True:
... do stuff ...
但是,在request.data.get("book")
不是一個布爾值,而是一個字符串:
<QueryDict: {u'book': [u'true']}>
當我在阿賈克斯C使用JSON.stringify({ book: true })
首先,它更是雪上加霜:
<QueryDict: {u'{"book":true}': [u'']}>
我怎樣才能得到JavaScript對象爲在我的代碼正確的Python QueryDict
?
這與模型無關。這是觸發某種行爲的布爾值。 –