[PYTHON] Étapes de l'installation de Django à l'affichage de la page html

Quoi écrire ici:

Cet article porte sur «Installer Django-> Étapes pour afficher la page html».

De plus, l'environnement d'écriture est Système d'exploitation: macOS Catalina version 10.15.4 Python:3.7.6 Django:3.0.3 Il est devenu.

Qu'est-ce que Django en premier lieu?

Django est l'un des frameworks d'applications Web utilisant Python qui vous permet de créer diverses applications Web. L'une des caractéristiques est qu'il possède de nombreuses fonctions et vous pouvez réduire le fardeau du développement d'applications Web en utilisant les composants inclus dans Django. Par exemple, l'authentification utilisateur et les écrans d'administrateur peuvent être implémentés à l'aide de Django. Vous pouvez également exécuter le traitement des applications Web en Python.

Installation de Django

Cela dépend de l'environnement, mais fondamentalement de n'importe quel système d'exploitation

$ pip install django

Je pense que vous pouvez l'installer avec. Je vais omettre la méthode d'installation détaillée ici, donc s'il vous plaît voir les pages d'autres personnes telles que Installer Django avec Python3 et afficher HelloWold. J'espère que vous pourrez vous y référer.

Créez un projet et exécutez-le

Une fois l'installation terminée, essayez de créer un projet. Après avoir déplacé vers n'importe quel répertoire,

$ django-admin startproject <Nom du projet>

Vous pouvez créer un projet django dans ce répertoire avec. Vous pouvez définir n'importe quel nom pour la partie , mais vous ne pouvez utiliser que des lettres, des chiffres et des traits de soulignement.

Une fois le projet créé, accédez à ce projet et

$ python manage.py migrate
$ python manage.py runserver

Je pense que le serveur sera démarré en exécutant. La première ligne

python manage.py migrate


 Est une commande pour appliquer le contenu du fichier de migration au modèle, et la commande pour démarrer le serveur est la deuxième ligne

#### **`python manage.py runserver`**
```py runserver

 est.
 Je pense que l'adresse http: // ~~~ sera affichée sur le terminal, donc si vous accédez à cette adresse avec un navigateur et que l'image suivante est affichée, cela fonctionne correctement.
 <img width="1008" alt="スクリーンショット 2020-05-29 23.47.32.png " src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/515612/ae2d0607-770d-8f65-28a2-e7a2cc6a72d3.png ">
 Vous pouvez arrêter le serveur en tapant Ctrl + C sur le terminal.

# Afficher la page html
 Ensuite, passons à la façon d'afficher votre propre page html en utilisant Django.
### Préparation du répertoire
 Actuellement, la structure du projet créé est

- db.sqlite3 - manage.py - - __init__.py - asgi.py - settings.py - urls.py - wsgi.py - __pycashe__ - (.Plusieurs fichiers pyc) ``` Je pense que c'est. Dans cet état, créez d'abord des dossiers nommés `` `` templates``` et `` `` static` ''. Le dossier templates est destiné au stockage des fichiers html et le dossier statique sert au stockage des fichiers css et js. Puis au terminal
$ django-admin startapp <nom de l'application>

Pour créer une application (<nom de l'application> peut être le nom de votre choix). À ce stade, si un fichier nommé urls.py n'a pas été créé dans le dossier <nom de l'application>, créez un fichier python nommé urls.py manuellement. Le répertoire est

<Nom du projet>
- db.sqlite3
- manage.py
- <Nom du projet>
  - __init__.py
  - asgi.py
  - settings.py
  - urls.py
  - wsgi.py
  - __pycashe__
    - (.Plusieurs fichiers pyc)
- <nom de l'application>
  - __init__.py
  - admin.py
  - apps.py
  - models.py
  - tests.py
  - urls.py
  - views.py
  - migrations
    - __init__.py
- templates
- static

Si c'est le cas, c'est OK.

Préparation de chaque dossier

Placez les fichiers html, css et js lorsque le répertoire est prêt. Placez le fichier html dans le dossier templates et les fichiers css et js dans le dossier static. Si vous avez déjà un fichier, allez à l'emplacement spécifié tel quel, si vous n'avez pas de fichier, utilisez un fichier html nommé index.html comme indiqué ci-dessous, et puisque le contenu peut être vide, appelez-le style.css et script.js Créez chaque fichier avec un nom et placez le fichier créé au même emplacement.

index.html


{% load static %}
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>HTML</title>
    <link rel='stylesheet' type='text/css' href="{% static 'style.css' %}"/>
    <script type="text/javascript" src="{% static 'script.js' %}"></script>
  </head>
    
  <body>
    Hello!!
  </body>
</html>

En guise de mise en garde ici -Ecrire {% load static%} en haut du fichier html -Lors de la lecture d'un fichier css ou js avec html, spécifiez le fichier comme suit: {% static ''%} "` `` Veuillez noter en particulier. Ceci est une description pour accéder aux fichiers dans le dossier statique. Si vous avez préparé votre propre fichier html, veuillez également modifier cette partie.

Modification des fichiers python

Lorsque les fichiers sont prêts, modifiez chaque fichier python et définissez-le pour que le fichier html puisse être lu. Éditer

<Nom du projet>/settings.py



#### **`<Nom du projet>/urls.py`**
```py


#### **`<nom de l'application>/urls.py`**
```py


#### **`<nom de l'application>/views.py`**
```py

 Ils sont quatre.

 ** <nom du projet> /settings.py**


#### **`Nom du projet/settings.py`**
```py

...
#AUTORISÉ à supprimer les restrictions d'accès_Créez des HOSTS comme suit.
#Cependant, il n'est pas bon de le rendre complètement ouvert du point de vue de la sécurité, alors spécifiez l'adresse IP en détail en fonction de l'objectif.
ALLOWED_HOSTS = ["*"]

...

INSTALLED_APPS = [
    ...,
   '<nom de l'application>'  # INSTALLED_Vers APPS'<nom de l'application>'Est ajouté.
]
...

TEMPLATES = [
  {
    ...
    #Modifiez la partie DIRS de MODELES comme suit.
    'DIRS': [
      os.path.join(BASE_DIR, 'templates'),
    ],
    ...
]
...

# LANGUAGE_CODE et HEURE_Changez de ZONE comme suit.
LANGUAGE_CODE = 'ja'
TIME_ZONE = 'Asia/Tokyo'

...

#Ajoutez ce qui suit
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
)

** /urls.py **

Nom du projet/urls.py


from django.contrib import admin
from django.urls import path, include #Ajouter inclure

urlpatterns = [
    path('admin/', admin.site.urls),
    path(r'', include('<nom de l'application>.urls')), #Ajouter ici
]

** <nom de l'application> /urls.py **

nom de l'application/urls.py


from django.urls import path
from . import views

app_name = '<nom de l'application>'
urlpatterns = [
    path(r'', views.index, name='index'),
]

** <nom de l'application> /views.py**

nom de l'application/views.py


from django.shortcuts import render

# Create your views here.
#Ajoutez ce qui suit
def index(req):
    return render(req, 'index.html')

Afficher html

Après avoir terminé les préparatifs ci-dessus, vous devriez être en mesure d'afficher le fichier html préparé en démarrant le serveur.

$ python manage.py runserver

Est exécuté sur le terminal, accédez à l'adresse affichée depuis le navigateur, et c'est OK si le contenu de index.html est affiché.

La page que j'ai utilisée comme référence

Django Girls Tutorial Installer Django avec Python3 et afficher HelloWold

Recommended Posts