Je voulais toucher Python pendant un moment, et j'ai essayé d'utiliser le framework le plus populaire appelé Django jusqu'à ce qu'il soit affiché comme Hello World
dans le navigateur, donc je posterai un mémorandum de celui-ci.
J'ai fait référence à cet article cette fois.
Le premier Hello World de Django https://qiita.com/Yuji_6523/items/d601ad11ad49b9e7ab0e
Comme prérequis, python et pip sont déjà installés.
Exécutez pip install django
pour installer la commande django.
$ python --version
Python 3.8.2
$ pip install django
# (réduction)
$ python -m django --version
3.1
Cette fois, c'est un exemple de création d'un projet nommé helloWorldProject
.
Vous pouvez créer un projet en exécutant la commande django-admin startproject [nom du projet] [répertoire à créer]
.
$ django-admin startproject helloWorldProject .
$ tree
.
├── helloWorldProject
│ ├── __init__.py
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── manage.py
Comme il n'y a rien à ce stade, ajoutons une application qui démarre lorsqu'elle est accédée avec domain / hello
et un navigateur.
Cette fois, nous ajouterons une application nommée «bonjour».
Vous pouvez ajouter une application en exécutant la commande python manage.py startapp [nom de l'application]
.
$ python manage.py startapp hello
$ tree
.
├── hello
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── migrations
│ │ └── __init__.py
│ ├── models.py
│ ├── tests.py
│ └── views.py
├── helloWorldProject
│ ├── __init__.py
│ ├── __pycache__
│ │ ├── __init__.cpython-38.pyc
│ │ └── settings.cpython-38.pyc
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── manage.py
Si cela est laissé tel quel, l'application «bonjour» n'a pas été appliquée, alors ajoutez les paramètres.
Ajoutez qu'il existe une application appelée «hello» dans «helloWorldProject / settings.py».
helloWorldProject/settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
#ajouter à
'hello',
]
Définissez les paramètres de routage dans helloWorldProject / urls.py
.
helloWorldProject/urls.py
from django.contrib import admin
from django.urls import path, include #inclure ajouté
urlpatterns = [
path('admin/', admin.site.urls),
#ajouter à
path('', include('hello.urls')),
]
Vous pouvez écrire path ('hello',
ici, mais cette fois, créez un fichier appelé hello / urls.py
et domain / hello
pour le routage. Jetez-le partout bonjour / urls.py`.
La raison en est de viser un programme avec une agrégation élevée et un couplage faible autant que possible.
De plus, créez un nouveau hello / urls.py
et configurez-le pour appeler la fonction index () de hello / views.py
quand il est accédé avec domain / hello
.
hello/urls.py(Fichier nouvellement ajouté)
from django.urls import path
from . import views
urlpatterns = [
path('hello', views.index),
]
Créez une fonction ʻindex ()dans
hello / views.py comme défini dans
hello / urls.py`.
Cette fois, je retournerai le fichier de Content-Type: text / html
décrit comme Hello World
dans la réponse HTTP.
hello/views.py
from django.http import HttpResponse
def index(request):
return HttpResponse('Hello World')
Bien qu'elle ne soit pas si pertinente cette fois, la migration fait ici référence à la fonction qui crée et gère automatiquement la définition de la base de données utilisée dans l'application.
Il peut être exécuté avec la commande suivante.
$ python manage.py migrate
Si la migration réussit, il ne devrait y avoir aucune erreur après l'exécution de la commande.
Vous pouvez le démarrer sur l'hôte local avec la commande suivante.
$ python manage.py runserver
Par défaut, il démarre sur le port 8000, donc si vous accédez à http: // localhost: 8000 / hello
et voyez Hello World
décrit dans python: hello / views.py
, cela réussit.
C'est tout.
Le projet créé cette fois a été publié sur GitHub.