Раскрывающийся список, который у меня есть в данный момент, будет извлекаться из базы данных всякий раз, когда пользователь печатает, и отображается раскрывающийся список, но строки в раскрывающемся списке пусты. Есть идеи, как это происходит? Данные, которые должны отображаться, находятся в базе данных sqlite.
здесь часть колбы:
# Establish sqlite connection
conn = sqlite3.connect('by_last.sqlite')
c = conn.cursor()
judge_name = c.execute("SELECT judge_last_name FROM unique_judge_lname_first")
fetch = judge_name.fetchall()
# init form
class SearchForm(Form):
autocomp = TextField('Search by last name', id='judge_autocomplete')
@app.route('/_autocomplete', methods=['GET'])
def autocomplete():
return Response(json.dumps(fetch), mimetype='application/json')
@app.route('/', methods=['GET', 'POST'])
def index():
form = SearchForm(request.form)
return render_template("home.html", form=form)
, а здесь html и jquery:
<h1>{{ form.autocomp.label }}:</h1>
{{ form.autocomp }}
<script>
$(function() {
$.ajax({
url: '{{ url_for("autocomplete") }}'
}).done(function (data){
$('#judge_autocomplete').autocomplete({
serviceUrl: '/_autocomplete',
source: data,
minLength: 1
});
});
});
</script>