Salutations à la communauté, j'ai dû relever le défi d'écrire un réseau social. Et comme le langage de programmation dont je parle plus ou moins Python, j'ai choisi le framework Django pour implémenter le projet. Afin de ne pas perdre de temps à écrire des modèles HTML et des styles CSS, je prends ces fichiers sur Internet avec la marque Free. Ce sont principalement des modèles de
Colorlib .
Allons-y.
Faites immédiatement une réservation que j'utilise PyCharm, donc je ne connais peut-être pas toutes les commandes du fichier manage.py.
Après avoir créé le projet dans l'environnement, comme dans tout projet Django, la première chose à faire est d'apporter des modifications au fichier settings.py, à savoir:
- Remplacez deux variables par
LANGUAGE_CODE = 'ru-ru' TIME_ZONE = ' / '
- Ajouter un dossier pour les fichiers statiques et multimédias
Ensuite, créez votre application avec la commande
python manage.py startapp my_app
Pour autant que je sache, un bon moyen d'écrire des applications dans Django est de diviser le projet en applications distinctes, et déjà dans celles-ci, nous décrivons les fonctionnalités dont nous avons besoin. Cette approche permet de transférer facilement des applications d'un projet à un autre, ce qui est très pratique. Allons plus loin.
Une fois l'application créée, nous devons l'enregistrer pour pouvoir l'utiliser. Ajoutez l'application à la liste des applications utilisées.
INSTALLED_APPS = [ 'django.contrib.admin', ... 'django.contrib.staticfiles', 'my_app',
Ensuite, vous devez déterminer l'URL de notre application, qui est également un bon ton de développement. Dans le dossier de l'application (à ne pas confondre avec le dossier du projet), vous devez d'abord créer le fichier urls.py. Et puis dans le dossier du projet dans le fichier urls.py, nous importons la fonction include et prescrivons l'adresse. Cela est également écrit dans les commentaires du fichier lui-même.
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('account.urls')) ]
Si à ce stade, nous démarrons le serveur avec la commande
python manage.py runserver
sur la ligne de commande (dans PyCharm le bouton "Exécuter" ou "Déboguer"), nous obtenons une erreur, car dans le dossier d'application le fichier urls.py (ci-après - compte / urls.py) est vide.
Remplissez-le avec le code suivant.
from django.urls import path from . import views urlpatterns = [ path('', views.index, name='login'),
Maintenant, une erreur va se produire car account / views.py est vide. Nous le réparons.
from django.shortcuts import render
Presque terminé. Ce qui a déjà été fait:
- Création d'une application dans le projet.
- Paramètres modifiés.
- L'adresse est enregistrée dans le projet urls.py principal.
- Le fichier urls.py est créé dans l'application et la vue y est écrite.
- Dans la vue, une fonction a été créée pour traiter l'url de l'adresse et du modèle HTML.
Il est temps de créer un modèle.
Lors de la création d'un projet, le dossier «modèles» est automatiquement créé en nous, vous devez y créer le dossier my_app, créer le fichier index.html dans my_app. Pour archiver la balise body, vous pouvez écrire:
<!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h2> .</h2> </body> </html>
et vous pouvez démarrer le serveur.
À la fin, nous devrions voir ceci (image):

Si le site utilise des styles CSS ou des fichiers JavaScript, et c'est 10 cas sur 10, vous devez les charger avant la ligne DOCTYPE avec la commande
{%load staticfiles%}
Dans ce cas, créez un dossier «statique» dans le dossier de l'application, maintenez CSS, JS, etc. à l'intérieur. Et dans le modèle HTML, spécifiez le chemin absolu du fichier dans la balise de lien avec le paramètre href, par exemple:
<link href="{% static 'css/style.css' %}" rel="stylesheet">
Total, le fichier ressemblera à ceci:
{%load staticfiles%} <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <title></title> <link href="{% static 'css/style.css' %}" rel="stylesheet"> </head> <body> <h2> .</h2> </body> </html>
En général, c'est là que se termine l'introduction. De plus, toutes les actions seront similaires, seule l'essence sera différente. Il y aura différents formulaires (balise de formulaire en HTML) dans le fichier forms.py de l'application (vous devez d'abord créer ce fichier), il y aura différentes logiques d'application décrites dans views.py, eh bien, et les modèles de la base de données décrits dans models.py. Mais l'algorithme des actions est le même
- Créez une adresse.
- Créez une vue (logique).
- Créez un modèle HTML.
- Nous lions tout ensemble.
+ - une paire d'actions intermédiaires sous forme de formes et de modèles.
Sur le blog Metanit (lien ci-dessous), l'essence du Modèle - Modèle - Présentation est bien décrite, je ne vais pas copier-coller, j'ai aussi une théorie sur les formes et les modèles.
Dans le «Django Girls Guide» (lien ci-dessous), vous pouvez en savoir plus sur l'expansion des modèles HTML (une fonctionnalité très utile de Django), sur la création d'un compte administrateur et sur l'ajout de données aux modèles créés.
Et je termine ici. Dans la prochaine partie il y aura un code pour créer un formulaire d'inscription sur le site, et afin de ne pas jeter sur Habré, je donnerai un lien vers le github. Succès dans l'ensemble, camarades.
Liens vers des ressources utiles:
Blog Django - MetanitDjango Girls GuideDjango en exemples