निम्न संबंधित मॉडल का उपयोग में कास्केड विलोपन (एक ब्लॉग प्रविष्टि कई संशोधन हो सकता है):Django - ManyToManyRelation
class BlogEntryRevision(models.Model):
revisionNumber = models.IntegerField()
title = models.CharField(max_length = 120)
text = models.TextField()
[...]
class BlogEntry(models.Model):
revisions = models.ManyToManyField(BlogEntryRevision)
[...]
मैं कैसे Django सभी संबंधित BlogEntryRevision
s को हटाना बता सकते हैं जब इसी BlogEntry
हटा दी जाती है? यदि "अन्य" पक्ष की कोई वस्तु हटा दी जाती है तो डिफ़ॉल्ट रूप से ऑब्जेक्ट को कई से अधिक संबंधों में रखना प्रतीत होता है। ऐसा करने का कोई तरीका - अधिमानतः BlogEntry.delete
ओवरराइड किए बिना?
हां, मैंने स्वीकार किया कि दूसरी प्रतिक्रिया के लिए टिप्पणी में गलती। पूर्णता के लिए: एक उपयोग केस मानना जो 'ManyToManyRelation' के साथ अधिक समझ में आता है, कैस्केड डिलीट करने का एक अच्छा तरीका क्या होगा? क्या गाबी पुराकारू के हटाए गए उत्तर से दृष्टिकोण काम करता है? – AndiDog
हटाने ''null = True'' –
पर कैस्केड-डिलीट व्यवहार' विदेशीकी 'पर नियंत्रित किया जा सकता है [' on_delete'] (https://docs.djangoproject.com/en/dev/ref/models/ फ़ील्ड/# django.db.models.ForeignKey.on_delete) (लेकिन डिफ़ॉल्ट रूप से 'CASCADE') करता है – meshy