我有一个方法可以遍历.txt文件,并使用该文件中的不同单词随机创建一个代码。现在,我想以某种方式获取该数据/代码,并使用js函数进行调用。更具体地说,当单击按钮时,它应始终调用该python方法并给我返回的值,然后我可以使用该值在页面上显示它。
在我的validators.py
中,我的方法已经完成
def generate_code(request):
words = open("words.txt").readlines()
word_one = random.choice(words).rstrip('\n')
word_two = random.choice(words).rstrip('\n')
number = random.randint(0, 100)
code = "{}-{}-{}".format(word_one, word_two, number)
return JsonResponse(code)
在我的urls.py中:
url(r'form/generate/code/?$', views.generate_code),
但是如何立即调用此函数并获取返回值以在JS中使用它呢?
我知道我必须做类似的事情
$.ajax({
type: "GET",
url: '/api/form/generate/code/'
data: ???,
success: function(data) {
console.warn(data)
}
});
但是我的data
是什么?那不是我从python方法返回的JsonResponse吗?
答案 0 :(得分:0)
好吧,我知道了,只需要用HttpResponse而不是JsonResponse返回我的代码即可:
return HttpResponse(json.dumps(code), content_type='application/json')
,从我的ajax调用中删除data
并添加一个datatype: 'json'
即可