Я очень новичок во Фляске. У меня есть база данных MySQL и шаблон. Допустим, у меня есть 3 изображения
<a href="#"><div><img src= pathOfImage id="profile1"/></div></a>
<a href="#"><div><img src= pathOfImage id="profile2"/></div></a>
<a href="#"><div><img src= pathOfImage id="profile3"/></div></a>
Идентификатор каждого изображения (profile1, profile2, profile3) является первичным ключом некоторых таблиц в базе данных. Я хочу найти значения соответствующих атрибутов этого кортежа, используя первичный ключ. Затем загрузите эти значения в шаблон из кортежей.
И у меня есть следующий код в Python:
from flask import *
@app.route("/")
def index():
return render_template("index.html")
@app.route('/experts')
def route1():
return render_template("experts.html", data=data)
Фрагмент HTML-кода, который я дал выше, находится в expert.html. Я почти SQL-запроса, который не был указан выше, данные по второму параметру в render_template в route1 () является кортеж SQL, который генерирует все эти изображения и ID.
Я попытался поместить кнопку рядом с изображениями и вместо нее присвоить ей идентификатор. Затем передайте идентификатор скрипту python как переменную, используя Ajax, и получите кортеж SQL.
Однако это не самая сложная часть. Сложная часть - это создание нового маршрута и загрузка контента. Я попытался создать новый маршрут, используя app.route и передать данные во второй параметр render_template. Но он не перенаправил на новый профиль, и метод был вызван еще до того, как я щелкнул по профилю.
ранее я использовал кнопку для получения идентификатора:
<html>
<body>
<a href="{{ url_for('route2') }}"> <button id='1'>Button1</button></a>
<a href="{{ url_for('route2') }}"><button id='2'>Button2</button></a>
<a href="{{ url_for('route2') }}"><button id='3'>Button3</button></a>
</body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"</script>
<script>
$(document).ready(function() {
$('button').click(function(event) {
var the_id = event.target.id;
$.ajax({
url: "/get_id",
type: "get",
data: {the_id: the_id},
success: function(response) {
},
error: function(xhr) {
}
});
})});
</script>
и я использовал их для создания нового шаблона:
import flask
from flask import *
from flaskext.mysql import MySQL
@app.route("/")
def index():
return render_template("index.html")
@app.route('/experts')
def route1():
return render_template("experts.html", data=data)
@app.route('/get_id')
@app.route('/profile')
def route2():
button_id '"' + flask.request.args.get('the_id') + '"'
//some code here to get the tuples that I need "client_info" and
//"skill_info" variable below
return render_template("profile.html", client_info=client_info,
skill_info=skill_info)
Надеюсь, кто-нибудь даст новый старт. Заранее спасибо!