Rename swagger_serializer_method parameter and update docs

This commit is contained in:
Cristi Vîjdea
2018-08-08 01:41:54 +03:00
parent afcba582b3
commit 23ebba4207
5 changed files with 49 additions and 41 deletions
@@ -22,21 +22,21 @@ class MethodFieldExampleSerializer(serializers.Serializer):
hinted_bool = serializers.SerializerMethodField(
help_text="the type hint on the method should determine this to be a bool")
@swagger_serializer_method(serializer=serializers.BooleanField)
@swagger_serializer_method(serializer_or_field=serializers.BooleanField)
def get_hinted_bool(self, obj):
return True
hinted_int = serializers.SerializerMethodField(
help_text="the type hint on the method should determine this to be an integer")
@swagger_serializer_method(serializer=serializers.IntegerField)
@swagger_serializer_method(serializer_or_field=serializers.IntegerField)
def get_hinted_int(self, obj):
return 1
hinted_float = serializers.SerializerMethodField(
help_text="the type hint on the method should determine this to be a number")
@swagger_serializer_method(serializer=serializers.FloatField)
@swagger_serializer_method(serializer_or_field=serializers.FloatField)
def get_hinted_float(self, obj):
return 1.0
@@ -44,28 +44,28 @@ class MethodFieldExampleSerializer(serializers.Serializer):
help_text="the type hint on the method should determine this to be a decimal")
# note that in this case an instance is required since DecimalField has required arguments
@swagger_serializer_method(serializer=serializers.DecimalField(max_digits=6, decimal_places=4))
@swagger_serializer_method(serializer_or_field=serializers.DecimalField(max_digits=6, decimal_places=4))
def get_hinted_decimal(self, obj):
return decimal.Decimal(1)
hinted_datetime = serializers.SerializerMethodField(
help_text="the type hint on the method should determine this to be a datetime")
@swagger_serializer_method(serializer=serializers.DateTimeField)
@swagger_serializer_method(serializer_or_field=serializers.DateTimeField)
def get_hinted_datetime(self, obj):
return datetime.datetime.now()
hinted_date = serializers.SerializerMethodField(
help_text="the type hint on the method should determine this to be a date")
@swagger_serializer_method(serializer=serializers.DateField)
@swagger_serializer_method(serializer_or_field=serializers.DateField)
def get_hinted_date(self, obj):
return datetime.date.today()
hinted_uuid = serializers.SerializerMethodField(
help_text="the type hint on the method should determine this to be a uuid")
@swagger_serializer_method(serializer=serializers.UUIDField)
@swagger_serializer_method(serializer_or_field=serializers.UUIDField)
def get_hinted_uuid(self, obj):
return uuid.uuid4()
+4 -4
View File
@@ -26,7 +26,7 @@ class UserSerializerrr(serializers.ModelSerializer):
hint_example = MethodFieldExampleSerializer()
@swagger_serializer_method(serializer=OtherStuffSerializer)
@swagger_serializer_method(serializer_or_field=OtherStuffSerializer)
def get_other_stuff(self, obj):
"""
method_field that uses a serializer internally.
@@ -41,7 +41,7 @@ class UserSerializerrr(serializers.ModelSerializer):
help_text="help text on field is set, so this should appear in swagger"
)
@swagger_serializer_method(serializer=serializers.IntegerField(
@swagger_serializer_method(serializer_or_field=serializers.IntegerField(
help_text="decorated instance help_text shouldn't appear in swagger because field has priority"))
def get_help_text_example_1(self):
"""
@@ -52,7 +52,7 @@ class UserSerializerrr(serializers.ModelSerializer):
help_text_example_2 = serializers.SerializerMethodField()
@swagger_serializer_method(serializer=serializers.IntegerField(
@swagger_serializer_method(serializer_or_field=serializers.IntegerField(
help_text="instance help_text is set, so should appear in swagger"))
def get_help_text_example_2(self):
"""
@@ -63,7 +63,7 @@ class UserSerializerrr(serializers.ModelSerializer):
help_text_example_3 = serializers.SerializerMethodField()
@swagger_serializer_method(serializer=serializers.IntegerField())
@swagger_serializer_method(serializer_or_field=serializers.IntegerField())
def get_help_text_example_3(self):
"""
docstring is set so should appear in swagger as fallback