Je suis le tutoriel Flask ici:
http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world
J'arrive au point où j'essaye ./run.py et j'obtiens:
Traceback (most recent call last):
File "./run.py", line 3, in <module>
from app import app
File "/Users/benjaminclayman/Desktop/microblog/app/__init__.py", line 1, in <module>
from flask import Flask
ImportError: No module named flask
Cela ressemble à:
ImportError: aucun module nommé flask
Mais leurs solutions ne sont pas utiles. Pour référence, je n'ai un dossier nommé flacon dont un utilisateur mentionné peut causer des problèmes.
import flask
vous n'avez aucune erreur? Est-il possible que vous ayez des versions de python sur votre ordinateur?import sys; print sys.path
dans ce fichier (avant la ligne où l'erreur se produit) et l'exécuter également dans l'invite interactive?Réponses:
Essayez de supprimer le virtualenv que vous avez créé. Créez ensuite un nouveau virtualenv avec:
Ensuite:
Maintenant, activons le virtualenv:
Vous devriez maintenant voir
(flask)
sur la gauche de la ligne de commande.Installons flask:
Créez ensuite un fichier nommé
hello.py
(REMARQUE: voirUPDATE Flask 1.0.2
ci - dessous):et exécutez-le avec:
MISE À JOUR Flask 1.0.2
Avec la nouvelle version de Flask, il n'est pas nécessaire d'exécuter l'application à partir de votre script.
hello.py
devrait ressembler à ceci maintenant:et exécutez-le avec:
Assurez-vous d'être dans le dossier où se
hello.py
trouve lors de l'exécution de la dernière commande.Toutes les étapes avant la création de hello.py s'appliquent également à ce cas
la source
Pour python 3, utilisez
la source
La seule façon de résoudre ce problème était d'ajouter le répertoire python de mes utilisateurs au fichier myapp.wsgi. Par exemple:
Je suppose que si vous installez les packages dans l'environnement global, vous ne devriez avoir aucun problème, mais mes packages python étaient installés en tant qu'utilisateur.
la source
export PYTHONPATH=/root/environments/my_env/lib/python3.6/site-packages/
Après avoir activé l'environnement virtuel et installé Flask, j'ai créé un fichier app.py. Je lance comme ça:
python -m flask run
. J'espère que cela aidera!la source
J'ai eu un problème similaire avec flasgger.
La raison en est que j'utilise toujours
sudo pip install flask
mais pour une raison quelconque, ce n'est pas toujours la voie à suivre. Parfois, tu dois faire juste
pip install flask
Un autre problème est que parfois les gens tapent
pip install Flask
avec le cap FPublier ceci ici au cas où quelqu'un serait bloqué. Faites-moi savoir si cela a aidé.
Lien utile: Quelle est la différence entre pip install et sudo pip install?
la source
C'est ce qui a fonctionné pour moi,
sudo -H pip install flask
Ou pour pip3 (python3), utilisez:
sudo -H pip3 install flask
Sidenote
Si vous utilisez virtualenv, il est judicieux
pip freeze >> requirements.txt
d'autoriser la liste des packages installés au même endroit. Lasudo
commande et le-H
drapeau. Pour en savoir plus sursudo
le-H
drapeau de, regardez la réponse de Paul . J'espère que cela vous aide.la source
J'utilisais python2 mais j'ai installé ceci: sudo apt-get install libapache2-mod-wsgi-py3
Au lieu de: sudo apt-get install libapache2-mod-wsgi
La correction de l'installation a résolu le problème du no flask.
la source
Dans mon cas, la solution était aussi simple que de démarrer mon environnement virtuel comme ceci:
$ venv/scripts/activate
Il s'avère que je suis encore frais avec Python :)
la source
/etc/apache2/sites-available/FlaskApp.conf
WSGIDaemonProcess FlaskApp python-home=/var/www/FlaskApp/FlaskApp/venv/FlaskApp
WSGIProcessGroup FlaskApp
service apache2 restart
Je suis aussi le tutoriel Flask, et j'ai rencontré le même problème, j'ai trouvé ce moyen de le résoudre.
http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world
la source
Accédez au fichier flacon dans microblog, puis activez l'environnement virtuel avec
source bin/activate
, puis passez à flacon / bin et flacon d' installation, et le reste des paquets,pip install flask
. Vous verrez flask répertorié dans le répertoire bin. Essayez de./run.py
recommencer à partir du microblog (ou de l’endroit où vous avez le fichier).la source
Même je suggère que vous virtualenv, cela pourrait également résoudre votre problème.
Si vous voulez déployer dans productionserver, continuez avec la solution ci-dessus, sinon utilisez virtualenv.
la source
C'est ce qui a fonctionné pour moi lorsque j'ai eu une erreur similaire dans Windows; 1. Installez virtualenv
Créer une virtualenv
flacon virtualenv
Accédez aux scripts et activez le virtualenv
Activer
Installer Flask
flacon d'installation python -m pip
Vérifiez si le flacon est installé
python -m liste de pip
la source
entrez votre mode interactif python puis:
import sys
sys.path
il imprimera votre chemin. Vérifiez si flask est installé dans le sys.path.
Pour MacOS, le chemin python se trouve sous /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
Mais pip installera le package python par défaut sous /Library/Python/2.7/site-packages
C'est pourquoi cela ne fonctionne pas pour MacOS.
la source
Le script flask est bien pour démarrer un serveur de développement local, mais vous devrez le redémarrer manuellement après chaque modification de votre code. Ce n'est pas très agréable et Flask peut faire mieux. Si vous activez la prise en charge du débogage, le serveur se rechargera lors des changements de code, et il vous fournira également un débogueur utile en cas de problème. Pour activer le mode débogage, vous pouvez exporter la variable d'environnement FLASK_DEBUG avant d'exécuter le serveur: par exemple, votre fichier est hello.py
la source
dans mon cas en utilisant Docker, mon fichier .env n'a pas été copié, donc les variables d'environnement suivantes n'ont pas été définies:
.env.local:
FLASK_APP=src/app.py
donc dans mon
Dockerfile
je devais inclure:qui a été référencé dans docker-compose.yml
env_file: ./env/.env.local
une autre chose à laquelle je devais faire attention est la variable de chemin pour m'assurer que mon environnement est utilisé
la source
ma réponse juste pour tous les utilisateurs qui utilisent le projet Web Visual Studio Flesk:
Faites un clic droit sur "Environnement Python" et cliquez sur "Ajouter un environnement"
la source
Si vous utilisez Pycharm, c'est le problème de l'environnement virtuel.
Ainsi, au moment de la création de votre projet Python, vous devrez sélectionner l'option "Interpréteur existant" -> cliquer sur "Interpréteur système" -> sélectionner l'option correcte par exemple "* \ AppData \ Local \ Programmes \ Python \ Python3.6 \ python.exe ".
Vous pouvez également utiliser 'New Virtual Env', mais je viens de donner la solution rapide qui devrait fonctionner pour les utilisateurs de Pycharm.
la source
Autre chose - si vous utilisez python3, assurez-vous de démarrer votre serveur avec
python3 server.py
, paspython server.py
la source
Cela a fonctionné pour moi après la mise à niveau de pip:
J'ai trouvé cette réponse ici: https://stackoverflow.com/a/49748494/3197202
Ensuite, je pourrais simplement installer flask:
la source