Maison >développement back-end >Tutoriel Python >Premiers pas avec la pile Django : créer un projet complet

Premiers pas avec la pile Django : créer un projet complet

Susan Sarandon
Susan Sarandonoriginal
2024-10-15 20:13:01708parcourir

Getting Started with the Django Stack: Create a Full Project

Si vous êtes nouveau dans le monde Python et que vous vous demandez ce qu'est Django, voici un article qui pourrait vous aider comme introduction pratique.

Django est comme cette boîte à outils que vous souhaiteriez toujours avoir. Cela rend la création d’applications Web puissantes et évolutives non seulement possible, mais véritablement amusante. Et devinez quoi ? Vous n’avez pas besoin d’être un expert pour commencer.

Dans ce guide, nous allons adopter une approche pratique pour créer un projet Django complet à partir de zéro. À la fin, vous disposerez de votre propre application Web entièrement fonctionnelle que vous pourrez modifier et améliorer. Allons-y !

Pour un aperçu détaillé de la pile Django, vous pouvez visiter cette page sur Code Clash.

Conditions préalables

Avant de commencer, vous aurez besoin de quelques éléments installés sur votre ordinateur :

  1. Python 3.x : Django nécessite Python 3.x pour fonctionner correctement.
  2. pip : Il s'agit du gestionnaire de packages de Python, et vous l'utiliserez pour installer Django et d'autres packages.
  3. Virtualenv (facultatif mais fortement recommandé) : il vous aide à créer des environnements isolés afin que vous puissiez séparer les dépendances des différents projets.

Si vous n'avez pas encore Python, vous pouvez le télécharger depuis python.org.

Étape 1 : Configurez votre environnement

Tout d'abord, nous devons mettre en place un environnement virtuel pour notre projet Django. Cela conservera toutes nos dépendances de projet au même endroit et garantira qu'elles n'interfèrent pas avec d'autres projets sur votre système.

Pour créer un environnement virtuel, exécutez la commande suivante :

# Create a virtual environment
python -m venv myenv

# Activate the virtual environment
# On Windows
myenv\Scripts\activate

# On macOS/Linux
source myenv/bin/activate

Une fois votre environnement virtuel activé, allez-y et installez Django :

pip install django

Et juste comme ça, vous êtes prêt à commencer à construire !

Étape 2 : Créer un nouveau projet Django

Commençons par créer un nouveau projet Django. Exécutez la commande suivante pour créer le projet :

django-admin startproject myproject

Cette commande générera un nouveau répertoire appelé monprojet, et il contiendra la structure suivante :

myproject/
    manage.py
    myproject/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py
  • manage.py : Un script qui vous aide à gérer le projet (par exemple, démarrer le serveur, migrer des bases de données).
  • settings.py : contient tous les paramètres de configuration de votre projet Django, comme les informations sur la base de données et les applications installées.
  • urls.py : où vous mappez les URL à leurs vues correspondantes.

Étape 3 : Exécutez le serveur de développement

D'accord, il est temps de voir si tout fonctionne. Naviguez dans votre dossier de projet et démarrez le serveur de développement :

cd myproject
python manage.py runserver

Maintenant, ouvrez votre navigateur et accédez à http://127.0.0.1:8000/. Vous devriez voir la page d'accueil par défaut de Django, avec une fusée. Cela signifie que votre projet est opérationnel : génial !

Étape 4 : Créer une application Django

Les projets Django sont comme de grandes boîtes, et à l'intérieur de ces boîtes, nous avons des boîtes plus petites appelées « applications ». Les applications sont des composants modulaires de votre projet, comme un blog, un système d'authentification des utilisateurs ou un module de commerce électronique.

Créons une application appelée blog en exécutant cette commande :

python manage.py startapp blog

Cela créera un nouveau dossier nommé blog contenant des fichiers tels que vues.py, models.py et autres pour vous aider à organiser votre code.

Pour informer Django de votre nouvelle application, ajoutez « blog » à la liste INSTALLED_APPS dans myproject/settings.py :

INSTALLED_APPS = [
    ...
    'blog',
]

Étape 5 : Définir les modèles

Un modèle dans Django est simplement une classe Python qui définit la façon dont vos données sont structurées. Ouvrez blog/models.py et définissez un modèle simple pour un article de blog :

from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()
    date_created = models.DateTimeField(auto_now_add=True)
  • titre : un court champ de texte pour le titre du message.
  • contenu : un champ de texte plus long pour le contenu de la publication.
  • date_created : stocke automatiquement la date à laquelle la publication est créée.

Maintenant, nous devons appliquer ces modifications à notre base de données en exécutant les commandes suivantes :

python manage.py makemigrations
python manage.py migrate

Ces commandes créeront les tables de base de données nécessaires pour le modèle Post.

Étape 6 : Créer des vues et des modèles

Une vue est l'endroit où la logique se produit. Il prend une requête et renvoie une réponse, affichant souvent une page HTML. Créons une vue pour afficher tous les articles de blog. Ouvrez blog/views.py et ajoutez :

from django.shortcuts import render
from .models import Post

def home(request):
    posts = Post.objects.all()
    return render(request, 'blog/home.html', {'posts': posts})

Cette vue d'accueil récupère toutes les publications de la base de données et les envoie à un modèle appelé home.html.

Ensuite, créons le modèle. Dans le répertoire blog/, créez un dossier appelé templates/blog/ et ajoutez un fichier nommé home.html :

<!DOCTYPE html>
<html>
<head>
    <title>Blog Home</title>
</head>
<body>
    <h1>Blog Posts</h1>
    {% for post in posts %}
        <div>
            <h2>{{ post.title }}</h2>
            <p>{{ post.content }}</p>
            <small>Published on: {{ post.date_created }}</small>
        </div>
    {% endfor %}
</body>
</html>

Ce code HTML affichera tous les articles avec leur titre, leur contenu et leur date de création.

Step 7: Set Up URL Routing

Now, we need to set up URL routing to connect the views to the right URLs. In the blog/ directory, create a file named urls.py (if it doesn't exist) and add:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='blog-home'),
]

Then, include the blog URLs in the main project’s urls.py file:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('blog.urls')),
]

This way, when someone visits the root URL, Django will serve the home view from the blog app.

Step 8: Test Your Application

You’re almost there! Let’s run the server again and see if our blog works:

python manage.py runserver

Go back to http://127.0.0.1:8000/ in your browser, and you should see a list of all your blog posts—congratulations, you’ve built your first Django app!

Additional Resources

  • Django Documentation - The official documentation is a treasure trove of information and examples.
  • Python-Anaconda Stack - Learn how Python can be used with Anaconda for data science.
  • Best Frameworks for Web Development - Explore the best web development frameworks, including Django.

Conclusion

In this guide, we walked through setting up a Django environment, creating a new project, and building a simple blogging app. Django has a lot of built-in features that make web development faster and easier, so you can focus on building what matters most. If you’re ready for more, check out Code Clash’s Django Stack page to dive deeper into the world of Django.

Happy coding, and welcome to the Django community!

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