Apprendre à créer des sites Web avec Django
Un développeur explore la création d'un site Web axé sur le backend en utilisant Django plutôt que du code frontend lourd. Il partage ce qui fonctionne bien, ce qui est frustrant et comment la correction d'un paramètre de modèle a amélioré les performances du site.
En bref: Un développeur explore la création d'un site Web axé sur le backend en utilisant Django plutôt que du code frontend lourd. Il partage ce qui fonctionne bien, ce qui est frustrant et comment la correction d'un paramètre de modèle a amélioré les performances du site.
La création de sites Web peut se faire de nombreuses manières différentes, et choisir les bons outils implique souvent beaucoup d'essais et d'erreurs.
Ce qui s'est passé, en mots simples
Un développeur qui crée généralement des frontends ou utilise Go a essayé d'utiliser Django pour créer un site Web doté d'une base de données SQL et d'un rendu HTML backend. Il a constaté que les ensembles de requêtes de Django, les filtres de modèles et les migrations automatiques de bases de données simplifiaient grandement la construction. Cependant, il n'a pas aimé utiliser l'héritage de vues basées sur des classes, a dû faire face à des robots de scraping automatisés envoyant du trafic et a découvert qu'un changement accidentel de paramètre ralentissait le rendu des modèles de son site.
Points clés
- Ensembles de requêtes personnalisés: Le développeur a aimé définir des ensembles de requêtes avec des filtres spécifiques pour rendre le code de vue plus facile à lire.
- Outils de modèles: Les modèles Django offrent des filtres intégrés utiles pour gérer les dates, transformer des liens textuels en éléments cliquables et gérer facilement les chaînes de requête.
- Migrations automatiques: La modification de modèles pour ajouter de nouveaux champs permet à Django de générer automatiquement des migrations, aidant la base de données à s'adapter à mesure que la compréhension du problème évolue.
- Problèmes d'héritage de vues: L'utilisation de vues basées sur des classes et de l'héritage pour partager du code entre les vues n'a pas été agréable, ce qui a poussé le développeur à passer plutôt à des fonctions.
- Découvertes en matière de performances: La désactivation accidentelle du chargeur de modèles en cache a entraîné des ralentissements, et sa correction a aidé le site à gérer davantage de requêtes par seconde.
Termes expliqués
- Django — Un framework logiciel qui fournit des outils intégrés pour aider à créer des sites Web à l'aide d'un langage backend. Exemple: Un ensemble de cuisine préfabriqué qui vous fournit les comptoirs et l'évier pour que vous n'ayez pas à les construire de zéro.
- Base de données SQL — Un système utilisé pour stocker et organiser des informations dans des tableaux. Exemple: Un énorme classeur numérique où vous pouvez rechercher rapidement des dossiers et des fichiers spécifiques.
- Migrations — Un moyen de mettre à jour en toute sécurité la structure d'une base de données au fil du temps et des changements du projet. Exemple: L'ajout d'une nouvelle colonne à une feuille de calcul existante sans perdre aucune des anciennes données qu'elle contient.
- Mise en cache des modèles — L'enregistrement de l'apparence finale d'une page Web afin que l'ordinateur n'ait pas à la reconstruire de zéro à chaque visite. Exemple: Garder un dessin photocopié prêt à être distribué au lieu de le redessiner à la main pour chaque personne qui le demande.
Pourquoi c'est important
Comprendre comment les différents frameworks Web gèrent les tâches et les performances peut aider les développeurs à choisir les bons outils pour leurs propres projets.
Ce que l'on ne sait pas encore
La source reflète uniquement l'expérience personnelle et les opinions d'une seule personne lors de son apprentissage de Django. Elle ne fournit pas d'étude scientifique complète ni de guide universel sur la manière de concevoir tous les sites Web.
D'après un article de Julia Evans. Ceci est une explication indépendante, rédigée avec nos propres mots et l'aide d'une IA ; Julia Evans ne l'a ni relue ni approuvée. Consultez l'original pour tous les détails.