2017-10-17 11 views
1

Je suis en train de passer un nom de fichier d'une image et la rendre sur un modèle, Bien que je passe le nom réel à travers elle n'affiche pas sur la pageimage affichage flacon de python sur une page html

@app.route('/', methods=['GET','POST']) 
@app.route('/start', methods=['GET','POST']) 
def start(): 
person_to_show = 'tim' 
profilepic_filename = os.path.join(people_dir, person_to_show, "img.jpg") 
return render_template('start.html',profilepic_filename =profilepic_filename) 

Par exemple: profilepic_filename = /data/tim/img.jpg J'ai essayé

{{profilepic_filename}} 
<img src="{{ url_for('data', filename='tim/img.jpg') }}"></img> 

et moi avons aussi essayé

<img src="{{profilepic_filename}}"></img> 

Ni dont travaillait

Répondre

4

J'ai créé people_photo dans static dossier et placé une image nommée shovon.jpg. De la application.py j'ai passé l'image en tant que variable au modèle et l'ai montrée en utilisant la balise img dans le modèle.

Dans application.py:

from flask import Flask, render_template, request, url_for 
import os 

PEOPLE_FOLDER = os.path.join('static', 'people_photo') 

app = Flask(__name__) 
app.config['UPLOAD_FOLDER'] = PEOPLE_FOLDER 

@app.route('/') 
@app.route('/index') 
def show_index(): 
    full_filename = os.path.join(app.config['UPLOAD_FOLDER'], 'shovon.jpg') 
    return render_template("index.html", user_image = full_filename) 

Dans index.html:

<!DOCTYPE html> 
<html> 
<head> 
    <title>Index</title> 
</head> 
<body> 
    <img src="{{ user_image }}" alt="User Image"> 
</body> 
</html> 

sortie:

enter image description here