Use ref_name to disambiguate serializers that drf-yasg would otherwise assume are the same.
This commit is contained in:
@@ -28,6 +28,10 @@ class CourseModeSerializer(serializers.Serializer):
|
|||||||
sku = serializers.CharField(required=False)
|
sku = serializers.CharField(required=False)
|
||||||
bulk_sku = serializers.CharField(required=False)
|
bulk_sku = serializers.CharField(required=False)
|
||||||
|
|
||||||
|
class Meta(object):
|
||||||
|
# For disambiguating within the drf-yasg swagger schema
|
||||||
|
ref_name = 'course_modes.CourseMode'
|
||||||
|
|
||||||
def create(self, validated_data):
|
def create(self, validated_data):
|
||||||
"""
|
"""
|
||||||
This method must be implemented for use in our
|
This method must be implemented for use in our
|
||||||
|
|||||||
@@ -36,6 +36,8 @@ class CourseModeSerializer(serializers.ModelSerializer):
|
|||||||
class Meta(object):
|
class Meta(object):
|
||||||
model = CourseMode
|
model = CourseMode
|
||||||
fields = ('name', 'currency', 'price', 'sku', 'bulk_sku', 'expires')
|
fields = ('name', 'currency', 'price', 'sku', 'bulk_sku', 'expires')
|
||||||
|
# For disambiguating within the drf-yasg swagger schema
|
||||||
|
ref_name = 'commerce.CourseMode'
|
||||||
|
|
||||||
|
|
||||||
def validate_course_id(course_id):
|
def validate_course_id(course_id):
|
||||||
@@ -77,6 +79,10 @@ class CourseSerializer(serializers.Serializer):
|
|||||||
verification_deadline = PossiblyUndefinedDateTimeField(format=None, allow_null=True, required=False)
|
verification_deadline = PossiblyUndefinedDateTimeField(format=None, allow_null=True, required=False)
|
||||||
modes = CourseModeSerializer(many=True)
|
modes = CourseModeSerializer(many=True)
|
||||||
|
|
||||||
|
class Meta(object):
|
||||||
|
# For disambiguating within the drf-yasg swagger schema
|
||||||
|
ref_name = 'commerce.Course'
|
||||||
|
|
||||||
def validate(self, attrs):
|
def validate(self, attrs):
|
||||||
""" Ensure the verification deadline occurs AFTER the course mode enrollment deadlines. """
|
""" Ensure the verification deadline occurs AFTER the course mode enrollment deadlines. """
|
||||||
verification_deadline = attrs.get('verification_deadline', None)
|
verification_deadline = attrs.get('verification_deadline', None)
|
||||||
|
|||||||
@@ -147,3 +147,5 @@ class UserSerializer(serializers.ModelSerializer):
|
|||||||
model = User
|
model = User
|
||||||
fields = ('id', 'username', 'email', 'name', 'course_enrollments')
|
fields = ('id', 'username', 'email', 'name', 'course_enrollments')
|
||||||
lookup_field = 'username'
|
lookup_field = 'username'
|
||||||
|
# For disambiguating within the drf-yasg swagger schema
|
||||||
|
ref_name = 'mobile_api.User'
|
||||||
|
|||||||
@@ -45,6 +45,10 @@ class CourseSerializer(serializers.Serializer): # pylint: disable=abstract-meth
|
|||||||
invite_only = serializers.BooleanField(source="invitation_only")
|
invite_only = serializers.BooleanField(source="invitation_only")
|
||||||
course_modes = serializers.SerializerMethodField()
|
course_modes = serializers.SerializerMethodField()
|
||||||
|
|
||||||
|
class Meta(object):
|
||||||
|
# For disambiguating within the drf-yasg swagger schema
|
||||||
|
ref_name = 'enrollment.Course'
|
||||||
|
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
self.include_expired = kwargs.pop("include_expired", False)
|
self.include_expired = kwargs.pop("include_expired", False)
|
||||||
super(CourseSerializer, self).__init__(*args, **kwargs)
|
super(CourseSerializer, self).__init__(*args, **kwargs)
|
||||||
|
|||||||
@@ -34,6 +34,8 @@ class UserSerializer(serializers.HyperlinkedModelSerializer):
|
|||||||
# This list is the minimal set required by the notification service
|
# This list is the minimal set required by the notification service
|
||||||
fields = ("id", "url", "email", "name", "username", "preferences")
|
fields = ("id", "url", "email", "name", "username", "preferences")
|
||||||
read_only_fields = ("id", "email", "username")
|
read_only_fields = ("id", "email", "username")
|
||||||
|
# For disambiguating within the drf-yasg swagger schema
|
||||||
|
ref_name = 'user_api.User'
|
||||||
|
|
||||||
|
|
||||||
class UserPreferenceSerializer(serializers.HyperlinkedModelSerializer):
|
class UserPreferenceSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
|
|||||||
Reference in New Issue
Block a user