class CategorySerializer(serializers.ModelSerializer):
    id = serializers.IntegerField(read_only=True)
    href = serializers.CharField()
    version = serializers.CharField()
    lastUpdate = serializers.DateTimeField()
    lifecycleStatus = serializers.CharField()
    validFor = serializers.ForeignKey(ValidFor)
    parentId = serializers.CharField()
    isRoot = serializers.CharField()
    name = serializers.TextField()
    description = serializers.TextField()

    def create(self, validated_data):
        return Category.objects.create(**validated_data)

    def update(self, instance, validated_data):
        instance.href = validated_data.get('href', instance.href)
        instance.version = validated_data.get('version', instance.version)
        instance.lastUpdate = validated_data.get('lastUpdate',
                                                 instance.lastUpdate)
        instance.lifecycleStatus = validated_data.get('lifecycleStatus',
                                                      instance.lifecycleStatus)
        instance.validFor = validated_data.get('validFor', instance.validFor)
        instance.parentId = validated_data.get('parentId', instance.parentId)
        instance.isRoot = validated_data.get('isRoot', instance.isRoot)
        instance.name = validated_data.get('name', instance.name)
        instance.description = validated_data.get('description',
                                                  instance.description)
        instance.save()

        return instance
Example #2
0
class ContactSerializer(serializers.ModelSerializer):
    id = serializers.IntegerField(read_only=True)
    phone = serializers.CharField()
    name = serializers.CharField()
    list = serializers.ForeignKey(read_only=True)

    class Meta:
        model = Contact
        fields = ['id', 'name', 'phone', 'list']
Example #3
0
class AccessibleChoiceSerializer(serializers.Serializer):
    access = serializers.CharField(max_length=8)
    user = serializers.ForeignKey(User, related_name='access_code')
    email = serializers.EmailField(max_length=255)
    status = serializers.ChoiceField(
        max_length=10,
        choices=ACCESS_CODE_STATUS_CHOICE,
    )

    class Meta:
        model = AccessibleChoice
        fields = ['access', 'user', 'email', 'status']
Example #4
0
class ChoiceSerializer(serializers.Serializer):
    id = serializers.IntegerField(read_only=True)
    question = serializers.ForeignKey(Question, on_delete=models.CASCADE)
    choice_text = serializers.CharField(required=False,
                                        allow_blank=True,
                                        max_length=100)
    votes = serializers.IntegerField()

    def create(self, validated_data):
        """
        Create and return a new `Snippet` instance, given the validated data.
        """
        return Snippet.objects.create(**validated_data)

    def update(self, instance, validated_data):
        """
        Update and return an existing `Snippet` instance, given the validated data.
        """
        instance.title = validated_data.get('title', instance.title)
        instance.code = validated_data.get('code', instance.code)
        instance.save()
        return instance
class ProfileSerializer(serializers.Serializer):
    user = serializers.ForeignKey(
        settings.AUTH_USER_MODEL,
        on_delete=serializers.CASCADE,
    )
    position = serializers.CharField(max_length=128)
    location = serializers.CharField(max_length=1024)
    skills = serializers.CharField(max_length=500)

    def create(self, validated_data):
        """
        Create and return a new `Profile` instance, given the validated data.
        """
        return Profile.objects.create(**validated_data)

    def update(self, instance, validated_data):
        """
        Update and return an existing `Profile` instance, given the validated data.
        """
        instance.user_id = validated_data.get('user_id', instance.user_id)
        instance.position = validated_data.get('position', instance.position)
        instance.location = validated_data.get('location', instance.location)
        instance.skills = validated_data.get('skills', instance.skills)
        instance.save()
class SnippetSerializer(serializers.ModelSerializer):
    title = serializers.CharField(allow_blank=True)

    PYTHON = 'python'
    JAVASCRIPT = 'js'
    HTML = 'html'
    LUA = 'lua'
    CSS = 'css'
    CLIKE = 'clike'
    MARKUP = 'markup'
    HTML = 'html'
    BASH = 'bash'
    DJANGO = 'django'
    GO = 'go'
    JSON = 'json'
    HTTP = 'http'
    PHP = 'php'
    RUBY = 'ruby'
    SAS = 'sas'
    SASS = 'sass'
    SCSS = 'scss'
    SQL = 'sql'

    LANGUAGE_CHOICES = [
        (PYTHON, 'python'),
        (JAVASCRIPT, 'js'),
        (HTML, 'html'),
        (LUA, 'lua'),
        (CSS, 'css'),
        (CLIKE, 'clike'),
        (MARKUP, 'markup'),
        (HTML, 'html'),
        (BASH, 'bash'),
        (DJANGO, 'django'),
        (GO, 'go'),
        (JSON, 'json'),
        (HTTP, 'http'),
        (PHP, 'php'),
        (RUBY, 'ruby'),
        (SAS, 'sas'),
        (SASS, 'sass'),
        (SCSS, 'scss'),
        (SQL, 'sql'),
    ]
    languages = serializers.CharField(
        max_length=7,
        choices=LANGUAGE_CHOICES,
        default=HTML,
    )
    code = serializers.TextField(max_length=None,
                                 min_length=None,
                                 allow_blank=False,
                                 trim_whitespace=True)
    description = serializers.TextField(max_length=200,
                                        null=True,
                                        allow_blank=True)
    creator = serializers.ForeignKey(to=CustomUser)
    date_added = serializers.DateTimeField(auto_now_add=True)

    class Meta:
        model = Snippet
        fields = [
            'title', 'languages', 'code', 'description', 'creator',
            'date_added', 'pk'
        ]