Faisons le titre aussi facilement que possible.
Blueprint vous permet de diviser et d'implémenter les fonctionnalités de votre application. Blueprint est officiellement recommandé comme moyen d'organiser des projets gonflés.
$ sudo pip3 install flask
$ cd ~/workspace/sample-flask/
$ ls
server.py
server.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def func_1():
return 'Hello world'
@app.route('/test')
def func_2():
return 'Test'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=80, debug=True)
$ python3 server.py
* Serving Flask app "server" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: on
* Running on http://0.0.0.0:80/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 337-601-528
127.0.0.1 - - [02/Mar/2020 11:18:06] "GET / HTTP/1.1" 200 -
Ignorer l'AVERTISSEMENT pour le moment Lorsque j'accède à 127.0.0.1 à partir de mon navigateur, il est écrit Hello world. Ensuite, lorsque vous accédez à 127.0.0.1 / test dans le navigateur, Test s'affiche cette fois.
Essayez de diviser "/ test" en fichiers séparés. J'ai créé un répertoire appelé func et créé test.py en dessous.
$ cd ~/workspace/sample-flask/func
$ ls
__init__.py
test.py
Importer un plan, Créez un objet Blueprint avec le cut out test.py.
test.py
from flask import Blueprint
#Créer un objet Blueprint
app = Blueprint('func', __name__)
@app.route('/test')
def func_2():
return 'Test'
Enregistrez le Blueprint divisé du côté server.py.
server.py
from flask import Flask
from func import test
app = Flask(__name__)
#Enregistrer le plan de division
app.register_blueprint(test.app)
@app.route('/')
def func_1():
return 'Hello world'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=80, debug=True)
Exécutons-le et voyons si le routage fonctionne.
Lorsque vous accédez à 127.0.0.1 depuis le navigateur comme auparavant, Hello world s'affiche et Ensuite, lorsque vous accédez à 127.0.0.1 / test dans le navigateur, Test s'affiche cette fois.
Si tout se passe bien, vous pouvez utiliser Blueprint pour diviser.
https://www.subarunari.com/entry/2017/10/11/003225
Recommended Posts