पर नेस्टेड धारावाहिक पर अद्वितीय सत्यापन मेरे पास ऐसा कोई मामला है, जहां आपके पास एक अद्वितीय क्षेत्र के साथ एक कस्टम नेस्टेड सीरियलाइज़र संबंध है। नमूना मामला:Django Rest Framework
class GenreSerializer(serializers.ModelSerializer):
class Meta:
fields = ('name',) #This field is unique
model = Genre
class BookSerializer(serializers.ModelSerializer):
genre = GenreSerializer()
class Meta:
model = Book
fields = ('name', 'genre')
def create(self, validated_data):
genre = validated_data.pop('genre')
genre = Genre.objects.get(**genre)
return Book.objects.create(genre=genre, **validated_data)
समस्या: जब मैं की तरह एक json वस्तु को बचाने की कोशिश { "नाम": "प्रिंस", "शैली": { "नाम": "इतिहास"}} डीआरएफ कोशिश शैली ऑब्जेक्ट को अद्वितीय बाधा को सत्यापित करने के लिए और यदि "इतिहास" मौजूद है तो मुझे अपवाद फेंक दें क्योंकि नाम "इतिहास" के साथ एक शैली अद्वितीय होनी चाहिए, और यह सच है लेकिन मैं केवल वस्तु को जोड़ने और एक साथ बनाने की कोशिश नहीं कर रहा हूं।
बहुत बहुत धन्यवाद !!
बहुत बहुत धन्यवाद! लेकिन अगर मुझे नेस्टेड सीरियलाइज़र में सत्यापन की आवश्यकता होती है तो जब मैं इसे Genre उदाहरणों को सहेजने के लिए उपयोग करता हूं? क्या यह जांचने का कोई तरीका है कि मैं एक जेनरेशन उदाहरण बना रहा हूं और नहीं, यदि कोई पुस्तक उदाहरण बना रहा हो? फिर से धन्यवाद! –
यह एक दूसरे सत्यापन चरण का हिस्सा होना चाहिए - ValidationError को बढ़ाकर बनाएं/अद्यतन भाग में कहें। – Linovia
यह वास्तव में सहायक था! आपका बहुत बहुत धन्यवाद! –