Jinja2 Использование изображений в HTML - PullRequest
0 голосов
/ 23 ноября 2018

Я потратил много времени, чтобы выяснить, что не так.Мне нужна твоя помощь сейчас.Я хочу сделать шаблон с изображением из моей файловой системы.Но это не работает.Путь - строка, содержащая имя файла

@app.route('/', methods=['GET'])
def main():

    return render_template('main.html',image = path)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
     <title>test</title>
</head>
<body>
<h2></h2>
<form method="post" enctype="multipart/form-data" action="/uploader">
    <input type="file" name="file">
    <button type="submit">Upload</button>
</form>
<img src={{ url_for('static', filename = image) }} >//i can't figure how to change this to use {{image}}
</body>
</html>

Ответы [ 3 ]

0 голосов
/ 23 ноября 2018

Я думаю, что-то вроде этого должно работать.

<img src="{{ url_for('static', filename='image') }}">

Где «изображение» относится к пути файла изображения внутри статической папки.Убедитесь, что вы используете полное имя файла изображения вместе с его типом файла, например, JPG, PNG и т. Д.

0 голосов
/ 23 ноября 2018

Если вы установили статическую папку следующим образом (или другими способами):

from flask import Flask
app = Flask(__name__, static_folder='static')

@app.route('/', methods=['GET'])
def main():

    return render_template('main.html', image = url_for("static", filename=path))

или короче:

    return render_template('main.html', image='/static/' + path))

после того, как вы поместите изображение в папку /staticВы можете получить его из шаблона:

<img src="{{image)}}">
0 голосов
/ 23 ноября 2018

Просто создайте полный путь к изображению в вашем представлении и передайте его в шаблон

@app.route('/', methods=['GET'])
def main():
    #path is filename string
    image_file = url_for('static', filename=path)

    return render_template('main.html', image_file=image_file)

, а затем просто используйте его как полную ссылку

<img src={{ image_file}} >

, если у вас есть файл изображения (симя файла, который хранится в path) в вашей статической папке, это должно работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...