присвоение url_for переменной и использование ее в качестве параметра в render_template, не работает

Создание новой функции в вашем литерале объекта и вызов конструктора кажется радикальным отходом от исходной проблемы, и это не нужно.

Вы не можете ссылаться на свойство sibling во время инициализации литерала объекта.

var x = { a: 1, b: 2, c: a + b } // not defined 
var y = { a: 1, b: 2, c: y.a + y.b } // not defined 

Простейшее решение для вычисляемых свойств (без кучи, без функций, без конструктора):

var x = { a: 1, b: 2 };

x.c = x.a + x.b; // apply computed property
1
задан Nahuel Berardi 23 March 2019 в 16:13
поделиться

1 ответ

Flask url_for полагается на контекст запроса, вы не можете поместить его вне функции представления, попробуйте переместить цикл for в функцию home.

Кроме того, вместо присоединения HTML-кода в Python, вы должны написать цикл for непосредственно в шаблоне (index.html) с синтаксисом Jinja. Например:

<body>
{% for dog in dogs %}
    Put your html code here.
    You can generate URL like this: <a href="{{ url_for('detail') }}">
{% endfor %}
</body>

также не забудьте передать переменную dogs с render_template:

@app.route('/')
def home():
     return render_template("index.html", dogs=dogs)

Прочитайте документацию Jinja для получения более подробной информации.

0
ответ дан Grey Li 23 March 2019 в 16:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: