Rangka kerja ORM dalam amalan Python Django ORM

WBOY
Lepaskan: 2023-06-10 13:00:23
asal
1517 orang telah melayarinya

Dengan perkembangan Internet, perisian pembangunan telah menjadi semakin popular. Untuk meningkatkan kecekapan pembangunan dan pengurusan kod, banyak bahasa menyediakan rangka kerja ORM, dan Python tidak terkecuali. Django ialah rangka kerja web Python yang menyediakan rangka kerja ORM yang berkuasa - Django ORM. Artikel ini akan memperkenalkan cara menggunakan Django ORM untuk mengurus pangkalan data.

  1. Pasang Django

Sebelum menggunakan Django ORM, anda perlu memasang Django. Anda boleh menggunakan pip untuk memasangnya, arahannya adalah seperti berikut:

pip install django
Salin selepas log masuk
  1. Projek Django baharu

Selepas memasang Django, anda boleh menggunakannya untuk mencipta projek baharu, arahannya adalah seperti berikut:

django-admin startproject project_name
Salin selepas log masuk

Ini akan mencipta projek Django bernama project_name.

  1. Buat model pangkalan data

Dalam Django ORM, model pangkalan data boleh ditakrifkan sebagai kelas Python. Dalam direktori aplikasi projek, buat fail bernama models.py dan tentukan model di dalamnya. Contohnya, untuk mencipta model bernama Book dengan atribut title, author, pub_date dan price, ia boleh ditakrifkan seperti berikut:

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)
Salin selepas log masuk

Di sini, Book mewarisi kelas Model dalam Django ORM dan mentakrifkan empat sifat. CharField mewakili jenis aksara, DateField mewakili jenis tarikh dan DecimalField mewakili jenis perpuluhan. Apabila mentakrifkan setiap sifat, anda boleh menggunakan parameter untuk mengawal jenis, panjang, ketepatannya, dsb.

Selain itu, kaedah dan kaedah kelas boleh ditakrifkan untuk model. Contohnya, tentukan kaedah kelas bernama get_books dalam model Buku untuk mendapatkan semua buku daripada pangkalan data, seperti berikut:

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()
Salin selepas log masuk

Di sini, gunakan pengubah kaedah kelas untuk mengubah suai kaedah get_books dan Ditakrifkan sebagai kaedah kelas. Kaedah ini menggunakan atribut objek dalam Django ORM untuk mendapatkan semua objek Buku.

  1. Jalankan pemindahan pangkalan data

Selepas menentukan model, anda perlu mencipta jadual dalam pangkalan data. Proses ini boleh dicapai menggunakan arahan makemigration dan migrate yang disediakan oleh Django ORM. Menggunakan arahan makemigration akan menghasilkan fail migrasi yang mengandungi perubahan pada model. Menggunakan arahan migrasi akan melaksanakan fail migrasi dan menggunakan perubahan pada pangkalan data. Perintahnya adalah seperti berikut:

python manage.py makemigrations
python manage.py migrate
Salin selepas log masuk
  1. Gunakan Django ORM untuk mengurus pangkalan data

Selepas model pangkalan data ditakrifkan dan pemindahan pangkalan data selesai, anda boleh menggunakan Django ORM untuk menguruskan pangkalan data. Contohnya, dalam views.py anda boleh menulis kod berikut:

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})
Salin selepas log masuk

Di sini, import model Buku daripada models.py dan gunakan kaedah get_books untuk mendapatkan semua buku. Ia kemudiannya dihantar sebagai parameter ke dalam fungsi pemaparan, yang akan menggunakan fail templat book_list.html untuk memaparkan halaman.

Dalam book_list.html, anda boleh menggunakan kod berikut untuk memaparkan senarai buku:

{% 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 %}
Salin selepas log masuk

Di sini, gunakan gelung for untuk mengulangi semua buku dan mengeluarkan atributnya. Perlu diingat bahawa apabila mengeluarkan atribut pub_date, penapis tarikh digunakan untuk memformat tarikh ke dalam bentuk tahun, bulan dan hari.

  1. Ringkasan

Django ORM ialah rangka kerja ORM yang berkuasa yang boleh membantu pembangun mengurus pangkalan data dengan mudah. Artikel ini memperkenalkan proses penggunaan Django ORM untuk mencipta model, menjalankan migrasi pangkalan data dan mengurus pangkalan data. Saya harap artikel ini dapat membantu pemula lebih memahami aplikasi Django ORM.

Atas ialah kandungan terperinci Rangka kerja ORM dalam amalan Python Django ORM. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan