问题描述
如何将jquery中的参数传递给python方法?
JQUERY
const fruits = ['Apple','Mango','Orange','Grapes']
function sendfruitstoPython() {
$.ajax({
url: 'Getfruits',type: "POST",data: { Fruit : fruits },success: callbackFunc
});
function callbackFunc(response) {
console.log("demo");
}
}
PYTHON
def Getfruits(request):
demo = request.GET.getlist('Fruit')
print("this is ",demo)
输出 这是[]
URL模式:
path('Getfruits',views.Getfruits,name='Getfruits')
它也尝试过...
JQUERY
function sendfruitstoPython() {
$.ajax({
url: 'Getfruits'+ fruits,success: callbackFunc
});
PYTHON
def def Getfruits(request,fruits) :
demo = request.POST.getlist('fruits')
print("this is ",demo)
URL PATTERN
path(r'^Getfruits/(?P<Fruit>\w+)/$',name='Fruit'),
它给我错误,因为当前路径Extractor / Getfruits [object set]与任何这些都不匹配。
在控制台中,我正在获取此.. 找不到:/ Extractor / Getfruits [对象集] [09 / Nov / 2020 18:27:56]“ POST / Extractor / Getfruits [object%20Set] HTTP / 1.1” 404 3340
解决方法
JQUERY
const fruits = ['Apple','Mango','Orange','Grapes']
function sendfruitstoPython() {
var selfruit = Array.from(fruits);
$.ajax({
url: 'Getfruits/'+selfruit,type: "POST",success: callbackFunc
});
function callbackFunc(response) {
console.log("demo");
}
}
PYTHON URL模式
path('Getfruits/<selfruit>',views.Getfruits)
PYTHON方法
@csrf_exempt
def Getfruits(request,selfruit):
li = list(selfruit.split(","))