
Bonjour à tous!
Lorsque j'ai rencontré Flask pour la première fois, j'ai immédiatement posé une question sur la construction d'une architecture de projet.
Après avoir lu quelques articles sur Habré ( https://habr.com/en/post/275099/ et https://habr.com/en/post/421887/ ), je me suis souvenu de mon expérience dans la création de projets sur Django, et j'ai décidé de faire un outil grâce à laquelle vous n'avez pas à penser à l'architecture, mais en même temps, vous pouvez utiliser toutes les fonctionnalités de Flask.
Installation
$ pip install Flask-DJ
Création de projet
Vous pouvez créer un projet à l'aide de la console (les indicateurs -t -st sont utilisés pour les modèles et les fichiers statiques)
$ flask-dj startproject app
Ou vous pouvez créer le fichier setup.py
(les indicateurs
need_templates = True, need_static = True sont utilisés pour les modèles et les fichiers statiques ).
from flask_dj import startproject
from os import getcwd
your_project_name = 'app'
project_dir = getcwd()
startproject(your_project_name, project_dir)
Le résultat devrait être la structure suivante
(statique et les modèles apparaîtront lorsque les drapeaux correspondants seront spécifiés)
app/
app/
__init__.py
config.py
urls.py
manage.py
Création d'application
( ).
( index ).
$ python manage.py startapp index
:
app/
app/
__init__.py
config.py
urls.py
index/
forms.py
models.py
urls.py
views.py
manage.py
(view)
Hello world, :
def index():
return "Hello world"
URL
index:
from utils.urls import relative_path
from .views import index
urlpatterns = [
relative_path("", index),
]
:
from utils.urls import add_relative_path, include
urlpatterns = [
add_relative_path("/", include("index.urls")),
]
$ python manage.py runserver
,

P.S.
.
, :
Upd1 buriy