[PYTHON] Mémorandum de construction du site Flask

Structure du répertoire

La configuration de base est la suivante, et écrivez l'opération initiale dans \ __ init__.py sous app.

root/ ┣run.py ┣app/  ┣_init_.py  ┣config.py  ┣module1/   ┣_init_.py   ┣models.py   ┣controllers.py   ┣forms.py  ┣templates/  ┣static/

run.py


from app import create_app

if __name__ == "__main__":
    app = create_app()
    app.run()

app/__init__.pyy


from flask import Flask
from flask_debugtoolbar import DebugToolbarExtension
from flask.ext.sqlalchemy import SQLAlchemy # Import SQLAlchemy
from flask.ext.mongoengine import MongoEngine # Import Mongoengine
from flask.ext.admin import Admin
from app import config

# app setup
db = SQLAlchemy()
mongodb = MongoEngine()
admin = Admin()
toolbar = DebugToolbarExtension()

def create_app():

    app = Flask()
    app.config.config_from_object(config)

    #Initializing
    db.init_app(app)
    mongodb.init_app(app)
    admin.init_app(app)
    toolbar.init_app(app)

   # Import a module
    from app.module1.controllers import mod_app

    # Register blueprint(s)
    app.register_blueprint(mod_app)

    # Build the database:
    # This will create the database file using SQLAlchemy
    db.create_all()

    return app

Si vous faites comme cela, vous pouvez spécifier url_prefix dans chaque module et vous inscrire avec register_bluepoint. Vous pouvez laisser la configuration sous forme de fichier, mais dans le cas de Windows, etc., "../" est subtil, donc je pense qu'il vaut mieux l'importer puis le lire comme un objet. Les modèles et satatiques peuvent être n'importe où, mais sous l'application, c'est intelligent.

Recommended Posts

Mémorandum de construction du site Flask
Vue.js + Mémorandum de construction de l'environnement Flask ~ avec Anaconda3 ~
Le point culminant de la construction de site normal REST + avec Flask, Eve
[Django] Mémorandum de procédure de construction d'environnement
ballon
ballon
Mémorandum / mémo sur le site de programmation d'apprentissage / de programmation