Maison  >  Article  >  développement back-end  >  Programmation Django : un guide complet de la théorie à la pratique

Programmation Django : un guide complet de la théorie à la pratique

WBOY
WBOYoriginal
2023-06-23 10:18:381100parcourir

Django est un framework d'application web open source écrit en langage Python. Depuis sa sortie, il est devenu l'un des frameworks privilégiés pour développer des applications Web de haute qualité.

Cet article vous présentera les bases de Django, y compris un guide complet de la théorie à la pratique. Nous aborderons les éléments suivants :

  1. Le contexte et l'historique de développement de Django
  2. Connaissance de base de Django
  3. L'architecture MVC et l'architecture MTV de Django
  4. Le système de routage et les vues de Django
  5. Le système de modèles de Django
  6. Le traitement des formulaires de Django
  7. Accès à la base de données de Django
  8. Système d'authentification des utilisateurs de Django
  9. Serveur Web et déploiement de Django
  10. Historique et historique de développement de Django

Django est apparu en 2005 et a été créé par un groupe d'éditeurs et de programmeurs de groupes de discussion. Ils ont créé un cadre permettant de gérer de grandes quantités de contenu Web. L'objectif principal de Django est de fournir un framework simple pour développer des applications Web.

Le framework de programme Django a un nom bien connu : Le framework Web pour les perfectionnistes avec des délais. En effet, Django met l'accent sur des normes de développement telles que rapide, efficace, simple, sûr et évolutif.

  1. Connaissance de base de Django

Django est basée sur le modèle de conception MVC, qui divise le programme en trois parties : Modèle, Vue et Contrôleur. Ces composants divisent le programme en parties de données, d'interface utilisateur et de pont. Django appelle MVC l'architecture MTV et introduit la couche Template.

Les composants principaux de Django incluent :

  • Système de routage : utilisé pour mapper une adresse URL à une vue de programme
  • Système de visualisation : une série de modèles affichés dans l'interface utilisateur frontale
  • Mappage relationnel objet ORM : utilisé pour gérer les données dans la base de données Data
  • Middleware : En étendant la classe middleware qui envoie des requêtes et reçoit des réponses
  1. L'architecture MVC et l'architecture MTV de Django

L'objectif du modèle MVC est de diviser une application en trois composants : Modèle , Vue et Contrôleur. Le modèle est la partie données de l'application. Il contient des composants de données d'application. La vue fait partie de l'interface utilisateur de l'application. Il est responsable de l’interaction entre l’interface et les données. Le contrôleur est le pont de MVC. Il connecte le modèle et la vue. Le contrôleur gère toute la logique d’application dans MVC.

Django présente l'architecture MTV. Dans MTV, Model est la partie de la base de données qui stocke les données. La couche Modèle est la partie Vue de MTV. Dans MTV, View est la partie logique et peut être écrit en Python. Les vues répondent aux requêtes d'une URL spécifique et incluent toute la logique pour récupérer les données de la base de données et les assembler dans un modèle.

Un exemple simple de MTV peut être vu comme un modèle représentant une liste d'étudiants. La base de données stocke des informations sur tous les étudiants. La vue récupère les données de la base de données et les transmet au modèle afin que l'utilisateur puisse gérer toutes les informations sur les étudiants.

  1. Le système de routage et les vues de Django

Le système de routage de Django cartographie les adresses URL demandées pour afficher les fonctions. Une adresse URL est une chaîne qui indique l'emplacement et la vue de la page que l'application doit afficher.

Grâce au système de routage de Django, un routage complexe peut être géré à l'aide de la syntaxe d'expression régulière standard ou de vues modèles. Par exemple, le type de routage suivant peut être utilisé :

Par exemple, nous pouvons mapper l'URL /admin à une vue en ajoutant ce qui suit au fichier urls.py : admin_site.site.urls :

  from django.contrib import admin
  from django.conf.urls import url, include
   
  admin.autodiscover()
   
  urlpatterns = [
      url(r'^admin/', admin.site.urls),
  ]
  1. Le modèle de Django système

Le système de modèles de Django permet aux développeurs d'utiliser des modèles pour créer efficacement du code dans les sites Web. Le moteur de modèles Django permet aux modèles d'être entièrement convertis en code HTML avant d'écrire la logique en Python.

Certains concepts de base des modèles incluent :

  • Variables de modèle : entourées de doubles accolades {{}}. Les variables de modèle sont des espaces réservés qui doivent être remplacés par des valeurs réelles lors du rendu.
  • Balise de modèle : entourée d'accolades {% %}. Les balises de modèle contrôleront la façon dont le modèle est rendu. Par exemple, les parenthèses {% if %} sont utilisées pour utiliser des conditions dans les modèles.
  • Filtres de modèle : modificateurs utilisés sur les variables de modèle.
  1. Traitement des formulaires de Django

Le système de traitement des formulaires de Django est la partie de l'application Web qui gère les entrées et les sorties dans la base de données. Django demande aux développeurs de définir une classe de formulaire, qui définit la manière dont le formulaire est affiché sur la page. L'avantage est que cela permet aux développeurs de comprendre les détails spécifiques du formulaire, augmentant ainsi la sécurité et la maintenabilité de l'application.

Les classes clés pour le traitement des formulaires incluent :

  • Form : définit chaque champ du formulaire
  • ModelForm : crée automatiquement le formulaire à partir du modèle
  • FormView : gère le formulaire et affiche le modèle
  1. Accès à la base de données pour Django

Django ORM est un framework avancé de mappage objet-relationnel. ORM permet aux développeurs d'écrire des classes de modèles à l'aide de Python et de les mapper aux tables de base de données. Django ORM fournit une couche d'accès aux données qui permet de décrire les structures de données via des modèles.

ORM a deux aspects principaux : la définition du modèle et la manipulation des données. Une définition de modèle décrit une entité dans l'application et définit les propriétés de cette entité. La manipulation des données est le processus de conversion entre les entités et les données stockées dans la base de données.

Les principales fonctionnalités d'ORM incluent :

+ API de requêtes étendue : y compris des requêtes et des jointures complexes
  • Système d'authentification des utilisateurs de Django
  • Django dispose d'un système d'authentification des utilisateurs intégré, qui est un moyen standard de gérer l'authentification des utilisateurs dans les applications Web. Le système d'authentification des utilisateurs comprend :
  • Enregistrement du nom d'utilisateur et du mot de passe
Connexion/Déconnexion
  1. Vérification côté ordinateur et sécurité de la session

Le système d'authentification des utilisateurs de Django intègre les backends d'authentification suivants :

  • Utilisateur
  • PasswordResetToken
  • EmailVerificationToken
SocialAuthenticatio

  • Serveur Web et déploiement de Django
  • Dans un environnement de production, Django recommande d'utiliser des serveurs Web matures tels qu'Apache et nginx. Django fournit également un serveur HTTP Python WSGI appelé Gunicorn, qui est un serveur Web léger intégré à Django.
  • Nous pouvons démarrer le serveur Gunicorn en utilisant la commande suivante :
  • gunicorn myproject.wsgi: application -w 2 -b: 8000
    Django fournit également un outil de déploiement appelé Fabric. En utilisant Fabric, les développeurs Django peuvent facilement configurer et déployer des applications Web Django.
  1. Résumé

Django est un framework d'application web efficace, simple, rapide, évolutif et sécurisé. Il utilise l'architecture MTV, dispose d'un système ORM et d'un système d'authentification des utilisateurs intégrés, et fournit également un système de modèles flexible et un traitement de formulaire puissant.

Notre guide fournit les bases et présente les aspects clés du développement de Django, notamment le système de routage, la gestion des vues, l'accès à la base de données, le traitement des formulaires, les serveurs Web et le déploiement. J'espère que cet article vous aidera à démarrer avec la programmation Django.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn