[drf] modelSerializer

kiwony_·2022년 6월 27일
0

django

목록 보기
14/15

modelserializer

The ModelSerializer class provides a shortcut that lets you automatically create a Serializer class with fields that correspond to the Model fields.

modelserializer상속받아 작성했다.
fields를 모두 받을 땐 '__all__'으로 작성하면되고,
아래와 같이 원하는 fields만 지정할 수도 있다.

class JobSerializer(serializers.ModelSerializer):
    class Meta:
        model = Job
        fields = ['company','position','compensation','description','skills']

update 메소드 작성

modelserializer는 create와 update 메소드를 사용 할 수 있는데

이때 update할 때 company 필드는 업데이트를 불가능하게 만들 때는 update 메소드에서 company만 제외하여 메소드를 작성하면 된다.

def update(self, instance, validated_data):
        instance.position = validated_data.get('position', instance.position)
        instance.compensation = validated_data.get('compensation', instance.compensation)
        instance.description = validated_data.get('description', instance.description)
        instance.skills = validated_data.get('skills', instance.skills)
        return instance

~~ 작성중 ~ ~

profile
에러의 지옥 속 막다른 길 (ง •̀_•́)ง

0개의 댓글