Maison  >  Article  >  développement back-end  >  Framework ORM dans la pratique Python Django ORM

Framework ORM dans la pratique Python Django ORM

WBOY
WBOYoriginal
2023-06-10 13:00:231520parcourir

Avec le développement d'Internet, le développement de logiciels est devenu de plus en plus populaire. Afin d'améliorer l'efficacité du développement et la gestion du code, de nombreux langages fournissent des frameworks ORM, et Python ne fait pas exception. Django est un framework Web Python qui fournit un framework ORM puissant - Django ORM. Cet article explique comment utiliser Django ORM pour gérer des bases de données.

  1. Installer Django

Avant d'utiliser Django ORM, vous devez installer Django. Il peut être installé en utilisant pip, la commande est la suivante :

pip install django
  1. Nouveau projet Django

Après avoir installé Django, vous pouvez l'utiliser pour créer un nouveau projet, la commande est la suivante :

django-admin startproject project_name

Cela créera un Projet Django nommé nom_projet.

  1. Créer un modèle de base de données

Dans Django ORM, le modèle de base de données peut être défini comme une classe Python. Dans le répertoire de l'application du projet, créez un fichier nommé models.py et définissez-y le modèle. Par exemple, la création d'un modèle nommé Book avec les attributs title, author, pub_date et price peut être définie comme suit :

from django.db import models
   
class Book(models.Model):
    title = models.CharField(max_length=100)
    author = models.CharField(max_length=200)
    pub_date = models.DateField()
    price = models.DecimalField(max_digits=5, decimal_places=2)

Ici, Book hérite de la classe Model dans Django ORM et définit quatre attributs. CharField représente le type de caractère, DateField représente le type de date et DecimalField représente le type décimal. Lors de la définition de chaque propriété, vous pouvez utiliser des paramètres pour contrôler leur type, leur longueur, leur précision, etc.

De plus, des méthodes et des méthodes de classe peuvent être définies pour les modèles. Par exemple, pour définir une méthode de classe nommée get_books dans le modèle Book afin d'obtenir tous les livres de la base de données, vous pouvez procéder comme suit :

class Book(models.Model):
    # 类属性
    title = models.CharField(max_length=100)
    author = models.CharField(max_length=200)
    pub_date = models.DateField()
    price = models.DecimalField(max_digits=5, decimal_places=2)

    # 类方法
    @classmethod
    def get_books(cls):
        return cls.objects.all()

Ici, utilisez le modificateur classmethod pour modifier la méthode get_books et la définir comme méthode de classe. Cette méthode utilise l'attribut objects dans Django ORM pour obtenir tous les objets Book.

  1. Exécuter la migration de la base de données

Après avoir défini le modèle, vous devez créer des tables dans la base de données. Ce processus peut être accompli à l'aide des commandes makemigrations et migrate fournies par Django ORM. L'utilisation de la commande makemigrations générera un fichier de migration contenant les modifications apportées au modèle. L'utilisation de la commande migrate exécutera le fichier de migration et appliquera les modifications à la base de données. La commande est la suivante :

python manage.py makemigrations
python manage.py migrate
  1. Utilisez Django ORM pour gérer la base de données

Après avoir défini le modèle de base de données et terminé la migration de la base de données, vous pouvez utiliser Django ORM pour gérer la base de données. Par exemple, dans vues.py, vous pouvez écrire le code suivant :

from django.shortcuts import render
from .models import Book

def book_list(request):
    books = Book.get_books()
    return render(request, 'book_list.html', {'books': books})

Ici, importez le modèle Book depuis models.py et utilisez la méthode get_books pour obtenir tous les livres. Ils sont ensuite transmis en tant que paramètres à la fonction de rendu, qui utilisera le fichier modèle book_list.html pour restituer la page.

Dans book_list.html, vous pouvez utiliser le code suivant pour afficher la liste des livres :

{% for book in books %}
    <div class="book">
        <h2>{{ book.title }}</h2>
        <p>{{ book.author }} - {{ book.pub_date|date:"Y年m月d日" }}</p>
        <p>价格:{{ book.price }}</p>
    </div>
{% endfor %}

Ici, utilisez une boucle for pour parcourir tous les livres et afficher leurs attributs. Il convient de noter que lors de la sortie de l'attribut pub_date, un filtre de date est utilisé pour formater la date sous la forme de l'année, du mois et du jour.

  1. Résumé

Django ORM est un framework ORM puissant qui peut aider les développeurs à gérer facilement les bases de données. Cet article présente le processus d'utilisation de Django ORM pour créer des modèles, exécuter des migrations de bases de données et gérer des bases de données. J'espère que cet article pourra aider les débutants à mieux comprendre l'application de Django ORM.

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