这是我的views.py
from flask import Flask
app = Flask(__name__)
@app.route('/autocomplete')
*def get_contacts():*
cat_list = []
cat_list = contact.objects.all()
return dumps(cat_list)
这是我的js
函数显示对话框() {
$("#dialog").dialog(
{
width: 600,
height: 400,
});
$.ajax({
url:'{{url_for("autocomplete")}}'
}).done(function(data){
$( "#search" ).autocomplete({
source: data
});
});
当我尝试运行它时出现以下错误
获取 http://127.0.0.1:8000/share_win/%7B%7Burl_for(%22autocomplete%22)%7D%7D 404(未找到)
有什么想法吗?
最佳答案
您的问题来自这里:
$.ajax({
url:'{{url_for("autocomplete")}}'
})
url_for
方法需要所需路由的函数名称,而不是物理路由。
要解决这个问题,您可以:
$.ajax({
url:'{{url_for("get_contacts")}}'
})
或者如果您的 Javascript 在 JS 文件中,则执行以下操作:
$.ajax({
url:'/autocomplete'
})
关于javascript - javascript自动完成中的python函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28438630/