हैलो मेरे पास मॉडल जैसा है

class mymodel(models.Model):
    a = models.CharField(blank=True, null=True, max_length=255)
    b = models.CharField(blank=True, null=True, max_length=255)
    c = models.CharField(blank=False, null=False, max_length=255)

चूंकि मैं अपने मॉडल में संग्रहीत डेटा के बैक-एंड नियंत्रक के रूप में django व्यवस्थापक का उपयोग कर रहा हूं, इसलिए मैं उनमें से किसी एक को शून्य नहीं बनाना चाहता हूं

उदाहरण के लिए उपयोगकर्ता को या तो a भरना होगा या या तो b भरना होगा या both भरना होगा, लेकिन अगर both खाली हैं तो एक त्रुटि फेंकनी चाहिए

0
ThunderHorn 9 नवम्बर 2018, 11:59

1 उत्तर

सबसे बढ़िया उत्तर

आप इस तरह custom सत्यापन जोड़ सकते हैं

class mymodel(models.Model):
    a = models.CharField(blank=True, null=True, max_length=255)
    b = models.CharField(blank=True, null=True, max_length=255)
    c = models.CharField(blank=False, null=False, max_length=255)

    def clean(self):
        if not (self.a and self.b):
            raise ValidationError(....)
2
a_k_v 9 नवम्बर 2018, 09:05