Dav*_*542 14 javascript python
以下似乎传递字符串而不是布尔值.我如何传递布尔值?
$.post('/ajax/warning_message/', {'active': false}, function() {
return
});
Run Code Online (Sandbox Code Playgroud)
def warning_message(request):
active = request.POST.get('active')
print active
return HttpResponse()
Run Code Online (Sandbox Code Playgroud)
Ósc*_*pez 44
在你的Python代码中执行以下操作:
active = True if request.POST.get('active') == 'true' else False
Run Code Online (Sandbox Code Playgroud)
甚至更简单:
active = request.POST.get('active') == 'true'
Run Code Online (Sandbox Code Playgroud)
请注意,该get()函数将始终返回一个字符串,因此您需要根据所需的实际类型进行转换.
假设您可以将boolean值作为true/false或发送到服务器1/0,在服务器端,您可以使用以下命令检查两种情况in:
def warning_message(request):
active = request.POST.get('active') in ['true', '1']
print active
return HttpResponse()
Run Code Online (Sandbox Code Playgroud)
否则,如果您确定您的布尔值仅true/false用于:
def warning_message(request):
active = request.POST.get('active') == 'true'
print active
return HttpResponse()
Run Code Online (Sandbox Code Playgroud)