การติดตามประวัติโมเดลเป็นคุณลักษณะที่ติดตามการเปลี่ยนแปลงในออบเจ็กต์โมเดล โดยจะติดตามสิ่งต่างๆ เช่น การเปลี่ยนแปลงที่คุณทำในนั้นและเมื่อคุณลบออก นอกจากนี้ยังช่วยในการกู้คืนวัตถุที่ถูกลบของโมเดล ในบทความนี้ เราจะยกตัวอย่างเพื่อดูวิธีการติดตามประวัติของวัตถุแบบจำลองใน Django
ตัวอย่าง
ก่อนอื่น ตั้งค่าโปรเจ็กต์ แอป URL และโมเดล
ติดตั้ง django-simple-history ห้องสมุด −
pip install django-simple-history
ใน settings.py −
INSTALLED_APPS+=[" simple_history"] MIDDLEWARE = [ #other middle ware 'simple_history.middleware.HistoryRequestMiddleware', ]
ที่นี่เราได้เพิ่ม "simple_history" โมดูลเป็นแอปและมิดเดิลแวร์
ที่นี่เราไม่ต้องทำอะไรมากใน urls.py และ views.py เพราะงานหลักของเราคือ models.py และ admin.py.
ใน models.py , เพิ่มต่อไปนี้ −
from django.db import models from simple_history.models import HistoricalRecords # Create your models here. class StudentData(models.Model): name=models.CharField(max_length=100) standard=models.CharField(max_length=100) section=models.CharField(max_length=100) history = HistoricalRecords()
ที่นี่เราเพียงแค่สร้างแบบจำลองและช่องประวัติที่จะบันทึกทุกการเปลี่ยนแปลง
ใน admin.py เพิ่มบรรทัดต่อไปนี้ −
from django.contrib import admin from .models import StudentData from simple_history.admin import SimpleHistoryAdmin admin.site.register(StudentData,SimpleHistoryAdmin)
ที่นี่เราลงทะเบียนโมเดลกับผู้ดูแลการติดตามประวัติ
เรียกใช้คำสั่งเหล่านี้ -
python manage.py makemigrations python manage.py migrate python manage.py createsuperuser
ตอนนี้คุณพร้อมแล้ว รหัสด้านบนใน models.py จะบันทึกข้อมูลประวัติทั้งหมดในฟิลด์ที่คุณสามารถเข้าถึงได้ใน views.py หรือเปลือก Django
ผลลัพธ์
คุณสามารถค้นหาได้ใน views.py หรือเปลือก Django