Ceci est ** 4th **, un mémorandum de création d'une application de gestion de partition shogi à l'aide de Django.
L'environnement de travail cette fois-ci est le suivant
De plus, la structure de répertoires de Django ressemble à ceci:
- kifu_app_project/
- kifu_app_project/
- __init__.py
- setting.py
- urls.py
- wsgi.py
- kifu_app/
- migrations/
- __init__.py
- admin.py
- apps.py
- models.py
- tests.py
- views.py
- manage.py
- .gitignore
Tout d'abord, définissez l'URL. Décidez que "Si vous arrivez à cette URL, faites cette méthode!" La fonction qui détermine le type de page affichée pour l'URL spécifiée de cette manière est appelée "répartiteur d'URL".
De plus, le comportement de ce répartiteur d'URL est décidé pour être écrit dans un fichier de configuration appelé "URLConf". Dans Django, urls.py est l'URLConf.
Ce qui suit est un matériel de référence.
[[Introduction à Django] Rôles et utilisation de urls.py (URLConf)] 1
Commençons par charger les paramètres d'URL dans l'application kifu_app pour l'ensemble du projet Django. Modifiez urls.py dans le kifu_app_project interne comme suit.
kifu_app_project/urls.py
"""kifu_app_project URL Configuration
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/2.2/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path, include #ajouter inclure
urlpatterns = [
path('kifu_app/', include('kifu_app.urls')), #ajouter à
path('admin/', admin.site.urls),
]
Les paramètres d'URL dans kifu_app sont maintenant chargés!
Ensuite, spécifiez l'URL détaillée dans l'application kifu_app.
Créez urls.py dans kifu_app.
Ce que vous faites avec ce urls.py est
kifu_app/urls.py
from django.urls import path
from . import views # 1.
app_name = 'kifu_app' # 2.
urlpatterns = [
path('', views.index, name='index'), # 3.
]
Décrivez l'URL dans le premier argument de la fonction de chemin et la méthode à appeler dans le deuxième argument. Le troisième argument (attribut name) peut être pear, mais si vous le spécifiez, ce sera plus facile plus tard.
Auparavant, dans urls.py dans kifu_app_project, l'URL de l'application kifu_app était définie sur `` 'kifu_app /' '. Ainsi, par exemple, notez que l'URL où index.html est affiché est * localhost: 8000 / kifu_app / *.
Ensuite, créez une méthode à exécuter côté serveur lors de l'affichage du modèle (écran). Cela vous permet de visualiser les données de manière dynamique.
Depuis que j'ai écrit plus tôt que la méthode d'index est appelée dans urls.py, je vais en fait créer la méthode d'index. Ici, essayons d'obtenir la date d'aujourd'hui et de la transmettre à Template.
views.py
from django.shortcuts import render
# Create your views here.
import datetime
def index(request):
today = datetime.date.today()
return render(request, 'index.html', {'today': today})
La vue est affichée en renvoyant la méthode de rendu. L'argument est
Enfin, nous allons créer l'écran réel (Template).
Dans View, j'ai écrit que je passerai les données à index.html, donc je créerai index.html. L'écriture est presque la même que l'écriture HTML.
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>Kifu APP</title>
</head>
<body>
<h3>{{ today }}</h3>
</body>
</html>
Si vous voulez utiliser la variable passée de View, écrivez la clé du dictionnaire dans {{}}
.
Maintenant, lancez le serveur et accédons-y! Ce n'est pas grave si la date d'aujourd'hui sort!
[Passer les données de base de données au modèle] 2
Recommended Posts