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
?
这与模型无关。这是触发某种行为的布尔值。 –