@@ -550,7 +550,7 @@ def validated_data(self):
550550 def save (self , ** kwargs ):
551551 """Convert validated data into related objects and save."""
552552 # Create or update direct relations (foreign key, one-to-one)
553- print ("RelatedSaveMixin.save for {} with data, kwargs: {}, {}" .format (self .__class__ .__name__ , self ._validated_data , kwargs ))
553+ self . logger . debug ("RelatedSaveMixin.save for {} with data, kwargs: {}, {}" .format (self .__class__ .__name__ , self ._validated_data , kwargs ))
554554 self ._save_direct_relations (kwargs = kwargs )
555555 instance = super (RelatedSaveMixin , self ).save (** kwargs )
556556 self ._save_reverse_relations (instance = instance , kwargs = kwargs )
@@ -563,14 +563,14 @@ def _save_direct_relations(self, kwargs):
563563 for field_name , field in self .fields .items ():
564564 if self .field_types [field_name ] != self .TYPE_DIRECT :
565565 continue
566- print ("{} direct save {} with data, kwargs; {}, {}" .format (self .__class__ .__name__ , field_name , self ._validated_data .get (field .source , empty ), kwargs .get (field_name , {})))
566+ self . logger . debug ("{} direct save {} with data, kwargs; {}, {}" .format (self .__class__ .__name__ , field_name , self ._validated_data .get (field .source , empty ), kwargs .get (field_name , {})))
567567 if self ._validated_data .get (field .source , empty ) == empty and kwargs .get (field_name , empty ) == empty :
568568 continue # nothing to save
569569 #if self._validated_data.get(field_name) is None or kwargs.get(field_name) is None:
570570 # continue # delete existing objects
571571 # we need to pop from kwargs so the value doesn't "overwrite" the value generated by save
572572 self ._validated_data [field .source ] = field .save (** kwargs .pop (field_name , {}))
573- print ("{}._validated_data[{}] set to direct {}" .format (self .__class__ .__name__ , field_name , self ._validated_data [field .source ]))
573+ self . logger . debug ("{}._validated_data[{}] set to direct {}" .format (self .__class__ .__name__ , field_name , self ._validated_data [field .source ]))
574574
575575 def _format_generic_lookup (self , instance , related_field ):
576576 return {
@@ -588,7 +588,7 @@ def _save_reverse_relations(self, instance, kwargs):
588588 if self ._validated_data .get (field .source , empty ) == empty and kwargs .get (field_name , empty ) == empty :
589589 continue # nothing to save
590590 model_field = self ._get_model_field (field .source )
591- print ("{} populating reverse field {}" .format (self .__class__ .__name__ , model_field .field .name ))
591+ self . logger . debug ("{} populating reverse field {}" .format (self .__class__ .__name__ , model_field .field .name ))
592592 if isinstance (field , serializers .ListSerializer ):
593593 # reverse FK, inject the instance into reverse relations so the <parent>_id FK field is valid when saved
594594 for obj in field ._validated_data :
@@ -608,7 +608,7 @@ def _save_reverse_relations(self, instance, kwargs):
608608 raise Exception ("unexpected serializer type" )
609609 # create/update (as appropriate) related objects
610610 self ._validated_data [field .source ] = field .save (** kwargs .get (field_name , {}))
611- print ("{}._validated_data[{}] to reverse {}" .format (self .__class__ .__name__ , field_name , self ._validated_data [field .source ]))
611+ self . logger . debug ("{}._validated_data[{}] to reverse {}" .format (self .__class__ .__name__ , field_name , self ._validated_data [field .source ]))
612612
613613 # eliminate related objects that weren't in the request
614614 if isinstance (field , ListSerializer ):
@@ -672,16 +672,16 @@ def build_direct_values(self, kwargs):
672672 return values
673673
674674 def match (self , kwargs ):
675- print ("FocalSaveMixin.match with no super and kwargs {}" .format (kwargs ))
675+ self . logger . debug ("FocalSaveMixin.match with no super and kwargs {}" .format (kwargs ))
676676 return self .instance
677677
678678 @transaction .atomic
679679 def save (self , ** kwargs ):
680- print ("FocalSaveMixin.save for {} with data, kwargs {}" .format (self .__class__ .__name__ , self ._validated_data , kwargs ))
680+ self . logger . debug ("FocalSaveMixin.save for {} with data, kwargs {}" .format (self .__class__ .__name__ , self ._validated_data , kwargs ))
681681 if self ._validated_data is None and kwargs == {}:
682682 return None # deleted
683683 match = self .match (kwargs )
684- print ("Match: {}" .format (match ))
684+ self . logger . debug ("Match: {}" .format (match ))
685685 self .do_update (match , kwargs )
686686 try :
687687 match .save ()
@@ -718,7 +718,7 @@ def save(self, **kwargs):
718718 "need to set extra attributes on the saved model instance. "
719719 "For example: 'serializer.save(owner=request.user)'.'"
720720 )
721- print ("List-{} save with data, kwargs: {}, {}" .format (self .child .__class__ .__name__ , self ._validated_data , kwargs ))
721+ self . logger . debug ("List-{} save with data, kwargs: {}, {}" .format (self .child .__class__ .__name__ , self ._validated_data , kwargs ))
722722
723723 new_values = []
724724
@@ -730,7 +730,7 @@ def save(self, **kwargs):
730730 if new_value is not None :
731731 new_values .append (new_value )
732732
733- print ("List-{} saved: {}" .format (self .child .__class__ .__name__ , new_values ))
733+ self . logger . debug ("List-{} saved: {}" .format (self .child .__class__ .__name__ , new_values ))
734734 return new_values
735735
736736 def run_validation (self , data = empty ):
@@ -827,10 +827,6 @@ def restore_validation_unique(self, unique_validators):
827827 for validator in validators :
828828 fields [name ].validators .append (validator )
829829
830- def save (self , ** kwargs ):
831- print ("NestedSaveSerializer.save with data, kwargs: {}, {}" .format (self ._validated_data , kwargs ))
832- return super ().save (** kwargs )
833-
834830 def update (self , instance , validated_data ):
835831 raise KeyError (
836832 "Update should never be called on a NestedSerializerBase. Make sure parent object uses NestedSaveMixin" )
@@ -861,7 +857,7 @@ def do_m2m_update(self, match, kwargs):
861857 continue # no information
862858 if value is None :
863859 value = [] # explicitly clear
864- print ("{}: m2m set to {}, {}" .format (self .__class__ .__name__ , field .source , value ))
860+ self . logger . debug ("{}: m2m set to {}, {}" .format (self .__class__ .__name__ , field .source , value ))
865861 getattr (match , field .source ).set (value )
866862
867863
@@ -870,12 +866,12 @@ class GetOnlyNestedSerializerMixin(NestedSaveSerializer):
870866
871867 def match (self , kwargs ):
872868 match = super (GetOnlyNestedSerializerMixin , self ).match (kwargs )
873- print ("GetOnlyNestedSerializerMixin.match with super {} and kwargs {}" .format (match , kwargs ))
869+ self . logger . debug ("GetOnlyNestedSerializerMixin.match with super {} and kwargs {}" .format (match , kwargs ))
874870 if match is not None :
875871 return match
876872 try :
877873 match_on = self .build_match_on (kwargs )
878- print ("Matching on: {}" .format (match_on ))
874+ self . logger . debug ("Matching on: {}" .format (match_on ))
879875 return self .queryset .select_for_update ().get (** match_on )
880876 except self .queryset .model .DoesNotExist :
881877 return None
@@ -890,7 +886,7 @@ class GetOrCreateNestedSerializerMixin(GetOnlyNestedSerializerMixin):
890886
891887 def match (self , kwargs ):
892888 match = super (GetOrCreateNestedSerializerMixin , self ).match (kwargs )
893- print ("GetOrCreateNestedSerializerMixin.match with super {} and kwargs {}" .format (match , kwargs ))
889+ self . logger . debug ("GetOrCreateNestedSerializerMixin.match with super {} and kwargs {}" .format (match , kwargs ))
894890 if match is not None :
895891 return match
896892 create_values = self .build_direct_values (kwargs )
@@ -905,12 +901,12 @@ class CreateOnlyNestedSerializerMixin(NestedSaveSerializer):
905901 """Creates requested object or fails."""
906902
907903 def match (self , kwargs ):
908- print ("GetOrCreateNestedSerializerMixin.match with no super and kwargs {}" .format (kwargs ))
904+ self . logger . debug ("GetOrCreateNestedSerializerMixin.match with no super and kwargs {}" .format (kwargs ))
909905 create_values = self .build_direct_values (kwargs )
910906 return self .queryset .model (** create_values )
911907
912908 def do_m2m_update (self , match , m2m_relations ):
913909 # assign relations to forward many-to-many fields
914910 for k , v in m2m_relations .items ():
915- print ("{}: m2m add to {}, {}" .format (self .__class__ .__name__ , k , v ))
911+ self . logger . debug ("{}: m2m add to {}, {}" .format (self .__class__ .__name__ , k , v ))
916912 getattr (match , k ).add (v )
0 commit comments