У меня есть сайт, встроенный в колбу.Одна страница отображает динамический список студентов из базы данных.Этот динамический список построен на основе JavaScript и представлен в виде таблицы.Я хочу быть в состоянии щелкнуть имя этого студента и сделать флягу, захватив маршрут.Чтобы сделать это, я думаю, что самый простой способ - использовать url_for () в качестве значения href.То есть что-то вроде этого
<a href="{{url_for('studentSelected', studentObj=studentObj)}}">Student Name</a>
Мой динамический HTML написан таким образом
html += "<tr>"+
"<td class='align-middle'><input type='checkbox' class='form-check' style='width:50px;height:50px;'></td>"+
"<td class='align-middle'>"+jinja+"<img src="+path+" onError='StudentImageError("+i+")' id='studentimage"+i+"' height='100'></a></td>"+
"<td class='align-middle'>"+item.FirstName +" "+item.LastName+"</td>"+
"<td class='align-middle'></td>"+
"<td class='align-middle'>0</td>" +
"<td class='align-middle'>0</td>"+
"</tr>"
переменная jinja
var jinja = "<a href=\"{{url_for(\'studentSelected\')}}\">"
python app.routeэто следующий
@app.route('/studentSelected', methods=['GET','POST'])
def studentSelected():
Это не работает.Ошибка:
jinja2.exceptions.TemplateSyntaxError jinja2.exceptions.TemplateSyntaxError: неожиданный символ '\' в 5033
, выделяющий этот код
var jinja = "<a href=\"{{url_for(\'studentSelected\')}}\">"
Я предполагаю, что этотерпит неудачу в скобках.Как правильно отформатировать это так, чтобы это правильно отображалось?Кроме того, как передать объект в мой app.route?
Редактировать: следующий фрагмент из javascript создает строку, которую я хочу, с именем url.Я вставляю URL в мою динамическую строку HTML.
var direct = "/student/"+studentID
var urlfor = "\{\{url_for('"+direct+"')\}\}"
var url = "<a href='"+urlfor+"'>"
html += "<tr>"+
"<td class='align-middle'><input type='checkbox' class='form-check' style='width:50px;height:50px;'></td>"+
"<td class='align-middle'>"+url+"<img src="+path+" onError='StudentImageError("+i+")' id='studentimage"+i+"' height='100'></a></td>"+
"<td class='align-middle'>"+item.FirstName +" "+item.LastName+"</td>"+
"<td class='align-middle'></td>"+
"<td class='align-middle'>0</td>" +
"<td class='align-middle'>0</td>"+
"</tr>"
Проблема в том, что при наведении мыши на эту ссылку все ссылки неверны.Там написано «% 7B% 7Burl_for (» и все. Это должно быть / student / $ studentIDValue $, где $ studentIDValue - это значение, которое я хочу передать app.route ()