Ich habe es überprüft, als ich die App erstellt habe, also werde ich es schreiben, damit ich es aufrufen kann, wenn ich es vergesse.
In Django habe ich eine saubere Methode zur Validierung in das Formular eingefügt, aber ich dachte, dass Django REST Framework überhaupt eine benutzerdefinierte Validierung schreiben würde, also habe ich sie untersucht.
Schreiben Sie jede Validierung in seliarizers.py
.
Schreiben Sie wie folgt.
#Überprüfen Sie, ob Sie ein Erwachsener sind
def validate_age(age):
if age < 21:
raise serializers.ValidationError('Für Minderjährige ist es zu früh!')
Schreiben Sie in der Klassenbasis mit der Methode __call__
.
Da es auf Klassenbasis in hohem Maße wiederverwendbar ist, ist die Sichtbarkeit des Codes besser, wenn Sie dies grundsätzlich verwenden.
class AgeValidator(object):
def __init__(self,num):
self.num = num
def __call__(self,age):
if age < self.num:
message = 'This page is for Adult!'
raise serializers.ValidationError(message)
Recommended Posts