Я пытаюсь создать раскрывающееся меню, которое использует информацию из первого столбца таблицы SQL для ее заполнения. Как связать данные из базы данных с моим выпадающим меню через python и flask?
Я пытался связать результаты таблицы с помощью оператора if в python. однако это не показывает никакой информации. Также не определены определения с именем 'image_name' для раздела @ app.route, как бы я его определил?
Python
def db_read(image_name):
#print("Filename: ", filename )
file_name=[]
try:
with sql.connect("translation.db") as con:
cur = con.cursor()
cur.execute('SELECT imagename FROM translations ORDER BY imagename ASC', (filename,))
con.commit()
file_name = cur.fetchall()
# print("-----------------------------------------")
# print("ROWS: ", rows)
print("reading from DB successful")
except:
con.rollback()
print("error in insert image name operation")
finally:
con.close()
return file_name
@app.route('/selectImage', methods=['GET','POST'])
def selectImage():
file_name = db_read(image_name)
print("image name: ", file_name)
return render_template("selectImage.html")
HTML
<div class="dropdown" action="getfileHelper" method="POST" enctype="multipart/form-data">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-
toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{% for x in file_name %}
<option value="{{ x }}"{% if loop.first %} SELECTED{% endif %}>{{ x }}</option>
{% endfor %}
Dropdown button
</button>
</div>
SQL в формате (имя файла, оригекст, перевод) и называется 'translations.db'