Feat: [#81] keyword, description 및 object 정보 추가

This commit is contained in:
sm4640
2025-07-19 19:44:57 +09:00
parent 4d7f0e8776
commit c04fa402df
3 changed files with 16 additions and 2 deletions

View File

@@ -21,6 +21,8 @@ class PageSerializer(serializers.Serializer):
class CodeSerializer(serializers.Serializer):
id = serializers.SerializerMethodField()
pages = PageSerializer(many=True, required=False)
keyword = serializers.ListField(child=serializers.CharField(), required=False, allow_empty=True)
description = serializers.CharField(allow_blank=True, required=False)
created_at = serializers.SerializerMethodField()
updated_at = serializers.SerializerMethodField()
@@ -34,6 +36,9 @@ class CodeSerializer(serializers.Serializer):
return str(obj.id)
def create(self, validated_data):
request = self.context['request']
validated_data['object_type'] = request.query_params.get('type')
validated_data['object_id'] = request.query_params.get('id')
pages_data = validated_data.pop('pages')
pages = [
Page(
@@ -63,5 +68,10 @@ class CodeSerializer(serializers.Serializer):
)
)
if 'keyword' in validated_data:
instance.keyword = validated_data['keyword']
if 'description' in validated_data:
instance.description = validated_data['description']
instance.save()
return instance