Flacon: Comment obtenir des url générées dynamiquement fichier image?
from flask import Flask, redirect, url_for
app = Flask(__name__)
@app.route('/')
def index():
generate_img("test.jpg");
return '<img src=' + url_for(filename='test.jpg') + '>'
generate_img()
va afficher une image aléatoire dans le répertoire en cours (même dossier que le script).
Je suis 404, je navigue à mydomain.com/test.jpg mais il n'y est pas.
OriginalL'auteur KJW | 2012-08-20
Vous devez vous connecter pour publier un commentaire.
En supposant que l'image est générée à l' (le fait que l'index() est appelée), le motif de la 404 est qu'il n'y a pas de route qui pointe vers l'image, de sorte Flacon vais vous dire il n'y a pas de mydomain.com/test.jpg. Statique serveur web comme Apache ou Nginx, par défaut, la carte des chemins de la racine aux Url, mais un simple Flacon/Werkzeug/WSGI le programme d'installation ne sera pas le faire.
Vous souhaitez peut-être créer une ressource qui renvoie directement l'image à la place?
EDIT: quelque Chose de similaire devrait être en mesure de servir des images.
EDIT2: bien sûr, generate_img pourrait probablement être réécrite de façon à ce qu'il ne jamais écrire sur le disque, mais au lieu de retourner les données de l'image directement.
Voici comment le faire, je crois: stackoverflow.com/a/25141268/1082367
OriginalL'auteur Bittrance
Raison d'une erreur 404, c'est que il n'y a pas de ce point de vue pour gérer cela. Pour servir des images de flacon, enregistrer l'image à l'intérieur statique dossier de et puis vous pouvez accéder à l'image à cette adresse
mydomain.com/static/test.jpg
Statique dossier est là pour servir tous les médias, css, javascript,fichiers vidéo ou image avec tout accessible à mydomai.com/static/filename. Rappelez-vous que vous ne devez pas utiliser flacon servant de la statique dossier dans la production. Cette fonctionnalité n'est pour le développement.
Vous pouvez utiliser statique dossier puis aussi, mais vous avez de la configuration d'Apache ou de tout serveur que vous utilisez pour charger des fichiers multimédias à partir de ce dossier. Sinon, si le flacon continue à servir ceux qui lui-même vous auriez des problèmes de performances. Découvrez les dernières lignes de cet article sur le blog pour savoir comment configurer Apache pour ce manavgoel.net/blog/post/2012/7/...
OriginalL'auteur codecool