backend/checker/api/serializers.py

36 lines
932 B
Python
Raw Normal View History

2022-08-26 20:04:45 +03:00
from rest_framework import serializers
2022-08-27 11:59:23 +03:00
from checker.models import Docx, WordDocx
2022-08-26 20:04:45 +03:00
class DocxSerializer(serializers.ModelSerializer):
class Meta:
model = Docx
fields = ["uuid", "file"]
extra_kwargs = {"uuid": {"read_only": True}}
2022-08-27 07:38:54 +03:00
class DocxStateSerializer(serializers.ModelSerializer):
class Meta:
model = Docx
fields = ["paragraphs_loaded", "paragraphs_processed"]
2022-08-27 11:59:23 +03:00
class WordDocxSerializer(serializers.ModelSerializer):
text = serializers.CharField()
class Meta:
model = WordDocx
fields = ["text", "uuid"]
extra_kwargs = {"uuid": {"read_only": True}, "text": {"write_only": True}}
write_only = ["text"]
def validate_text(self, val):
return str(val).encode()
class WordDocxStateSerializer(serializers.ModelSerializer):
class Meta:
model = WordDocx
fields = ["paragraphs_loaded", "paragraphs_processed"]