Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Django में मॉडल ऑब्जेक्ट का हिस्ट्री ट्रैकिंग


मॉडल हिस्ट्री ट्रैकिंग एक फीचर है जो मॉडल ऑब्जेक्ट में परिवर्तनों को ट्रैक करता है, यह उन चीजों को ट्रैक करता है जैसे आपने इसमें क्या बदलाव किया और आपने इसे कब डिलीट किया। यह मॉडल के डिलीट किए गए ऑब्जेक्ट की रिकवरी में भी मदद करता है। इस लेख में, हम एक उदाहरण लेंगे और देखेंगे कि Django में मॉडल ऑब्जेक्ट की हिस्ट्री को कैसे ट्रैक किया जाए।

उदाहरण

सबसे पहले, अपना प्रोजेक्ट, ऐप्स, urls और एक मॉडल सेट करें।

django-simple-history लाइब्रेरी इंस्टॉल करें:

pip install django-simple-history

settings.py में:

INSTALLED_APPS += ["simple_history"]
MIDDLEWARE = [
    # अन्य मिडलवेयर
    '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

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 शेल में एक्सेस कर सकते हैं।

आउटपुट

Django में मॉडल ऑब्जेक्ट का हिस्ट्री ट्रैकिंग Django में मॉडल ऑब्जेक्ट का हिस्ट्री ट्रैकिंग Django में मॉडल ऑब्जेक्ट का हिस्ट्री ट्रैकिंग Django में मॉडल ऑब्जेक्ट का हिस्ट्री ट्रैकिंग

आप इसे views.py या Django शेल में क्वेरी कर सकते हैं।


  1. Django मॉडल ऑब्जेक्ट हिट काउंटिंग Django मॉडल ऑब्जेक्ट हिट काउंटिंग

    इस लेख में, हम एक प्रोजेक्ट बनाने जा रहे हैं जिसमें हम देखेंगे कि एक Django टेबल कैसे बनाई जाए जो हिट काउंट का सारा डेटा और हिट का विस्तृत डेटा स्टोर करे। इसका उपयोग उपयोगी रिपोर्ट्स जनरेट करने के लिए किया जा सकता है। तो, चलिए शुरू करते हैं। अपना urls.py सेट करें और django-hitcount मॉड्यूल इंस्टॉल

  1. Django में मॉडल इंस्टेंस में ट्रांसलेशन जोड़ना Django में मॉडल इंस्टेंस में ट्रांसलेशन जोड़ना

    इस लेख में, हम सीखेंगे कि किसी भी इंस्टेंस के लिए ट्रांसलेशन कैसे बनाया जाए। कभी-कभी, आपको ID, नाम, कोट्स, लाइन्स आदि जैसे डेटा को सेव करने की आवश्यकता हो सकती है। आपको उस डेटा को विभिन्न भाषाओं में रेंडर करना पड़ सकता है; इसके लिए आपको बहुत सारे डेटाबेस कार्य करने पड़ते हैं, लेकिन आज मैं आपको दिखा

  1. Ruby के ऑब्जेक्ट मॉडल में गहरा गोता: एक व्यापक गाइड Ruby के ऑब्जेक्ट मॉडल में गहरा गोता: एक व्यापक गाइड

    विकिपीडिया के अनुसार, ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) ऑब्जेक्ट्स की अवधारणा पर आधारित एक प्रोग्रामिंग पैराडाइम है, जिसमें डेटा और कोड दोनों हो सकते हैं: डेटा फील्ड्स के रूप में (जिन्हें अक्सर एट्रिब्यूट्स या प्रॉपर्टीज के रूप में जाना जाता है) और कोड प्रोसीजर के रूप में (जिन्हें अक्सर मेथड्स के