मैं प्राथमिक श्रेणी और उप श्रेणियों के लिए माता पिता/बच्चे स्वयं संबंध के साथ एक श्रेणी मॉडल है:Django में कई रिलेशनशिप जहाजों पर कई() का उपयोग करते समय सत्यापन कैसे करें?
class Place(models.Model):
name = models.CharField(_("name"), max_length=100)
categories = models.ManyToManyField("Category", verbose_name=_("categories"))
class Category(models.Model):
name = models.CharField(_("name"), max_length=100)
parent = models.ForeignKey('self', blank=True, null=True, related_name='child_set')
मैं, अनाथ को रोकने के लिए (व्यवस्थापक वेब अंतरफलक में) त्रुटियों के इस प्रकार को रोकने के लिए
c_parent = Category(name='Restaurant')
c_parent.save()
c_child = Category(name="Japanese restaurant", parent=c_parent)
c_child.save()
place1 = Place (name="Planet sushi")
place1.save()
place1.categories.add(c_parent)
place1.categories.add(c_child)
की जरूरत
तो अब हम एक नया "ग्रह सुशी" कहा जाता है जहाँ है, यह एक रेस्तरां (जड़ श्रेणी), और एक जापानी रेस्तरां (उप श्रेणी)
है, लेकिन मैं चीजों को इस तरह का रोकने के लिए चाहते हैं:
place2 = Place (name="Tokyofood")
place2.save()
place2.categories.add(c_child)
क्योंकि माता पिता सेट नहीं है, या सही जनक श्रेणी
जहां मैं व्यवस्थापक के लिए फ़ॉर्म सत्यापन नहीं कर सकते? और अन्य रूपों (किसी भी उपयोगकर्ता एक नई जगह में जोड़ सकते हैं और सही श्रेणियां चयन करना होगा क्योंकि)
मैंने अपनी टिप्पणी –