Файл изображения jinja с флагом Python не найден

Вопрос с новичком.

Я использую Flask, webframe для Python. Flask использует Jinja для визуализации шаблона. Я не знаю, какая версия Jinja Flask использует, и я не знаю, как получить версию Jinja или версию Flask. Я использую Python версии 2.7.

Шаблон содержит изображение в каталоге css / image. Это изображение отображается при просмотре шаблона в виде файла непосредственно в браузере Firefox.

Но не при выполнении Flask:

from flask import Flask, render_template app = Flask(__name__) @app.route('/hello/') @app.route('/hello/<name>') def hello(name=None): return render_template('Basic.html', name=name) if __name__ == '__main__': app.debug = True app.run() 

Содержимое файла HTML:

  <!DOCTYPE HTML> <html> <body> <!-- variable example begin --> {% if name %} <h1>Hello {{ name }}!</h1> {% else %} <h1>Hello World!</h1> {% endif %} <!-- variable example end --> <img src="csshttp://img.rupython.com/pythonicons/resultset_previous.png" width="16" height="16" alt="previous" title="Previous" border="0"> </body> </html> 

Пример выполнения шаблона выполняется нормально и переменным, как и ожидалось. Но изображения не отображаются. Отладка возвращает: «GET /hello/csshttp://img.rupython.com/pythonicons/resultset_previous.png HTTP / 1.1« 404 –

Я запускаю Flask в VirtualEnv, как это предлагается в документации. Путь к изображению кажется неизвестным. Как я могу установить путь?

Для Flask вы должны хранить статические файлы обычно под папкой «static», а затем использовать функцию url_for. Допустим, ваш проект называется «myproject» и, используя ваш пример, он должен выглядеть примерно так:

 myproject/ app.py templates/ static/ css/ images/ icons/ resultset_previous.png 

Затем в шаблоне вы можете позвонить

 <img src= {{ url_for('static', filename = 'csshttp://img.rupython.com/pythonicons/resultset_previous.png') }} width="16" height="16" alt="previous" title="Previous" border="0"> 

Кроме того, чтобы ответить на ваш вопрос о версиях jinja и т. Д., Проверьте это

https://github.com/mitsuhiko/flask/blob/master/.travis-lowest-requirements.txt

См. Этот раздел документации Flask.

Правильный способ ссылаться на статический файл из вашего шаблона:

 <img src="{{ url_for('static', filename = 'csshttp://img.rupython.com/pythonicons/resultset_previous.png') }}" width="16" height="16" alt="previous" title="Previous" border="0">