2017-08-22 1 views
0

Lassen Sie uns sagen, dass ich diese Struktur haben:Django Übriges Rahmen Validator enthalten FK Feld

class RouteSerializer(ModelSerializer): 

    class Meta: 
     model = Route 
     fields = ('origin', 'destiny') 

class NetworkSerializer(ModelSerializer): 

    routes = RouteSerializer(many=True) 

    class Meta: 
     model = Network 
     fields = ('name','routes') 

Wie kann ich eine UniqueTogetherValidator mit beiden origin einzurichten, destiny und name (seit Route hat ein FK von Network)

Antwort

0

Sie können die gültige Methode des Serializer, zum Beispiel außer Kraft setzen:

class NetworkSerializer(ModelSerializer): 

    def validate(self, data): 
     """ 
     Check that UniqueTogetherValidator with both origin, destiny and name. 
     """ 
     is_unique = YOU_VALID_QUERY_SET 
     if not is_unique: 
      raise serializers.ValidationError("Must be unique origin, destiny and name") 
     return data 
+0

i ti wie th genau tat ist, aber ich suchte nach einer Möglichkeit, dies mit Validatoren zu tun. Danke trotzdem! – rafaeltardivo

Verwandte Themen