tahamajs/RR / Codes /django_api /support /serializers.py
tahamajs's picture
download
raw
2.18 kB
from rest_framework import serializers
from .models import Feedback, Solution, SupportTicket, TicketMessage
class TicketMessageSerializer(serializers.ModelSerializer):
class Meta:
model = TicketMessage
fields = ["id", "ticket", "role", "content", "metadata", "created_at"]
read_only_fields = ["id", "ticket", "role", "metadata", "created_at"]
class SupportTicketSerializer(serializers.ModelSerializer):
username = serializers.CharField(source="user.username", read_only=True)
messages = TicketMessageSerializer(many=True, read_only=True)
class Meta:
model = SupportTicket
fields = [
"id",
"user",
"username",
"title",
"description",
"code_snippet",
"log_attachment",
"tags",
"status",
"ai_summary",
"ai_steps",
"web_sources",
"messages",
"created_at",
"updated_at",
]
read_only_fields = [
"id",
"user",
"username",
"status",
"ai_summary",
"ai_steps",
"web_sources",
"messages",
"created_at",
"updated_at",
]
class SupportTicketCreateSerializer(serializers.ModelSerializer):
class Meta:
model = SupportTicket
fields = ["title", "description", "code_snippet", "log_attachment", "tags"]
class SolutionSerializer(serializers.ModelSerializer):
ticket_title = serializers.CharField(source="ticket.title", read_only=True)
class Meta:
model = Solution
fields = ["id", "ticket", "ticket_title", "content", "upvotes", "created_at"]
read_only_fields = ["id", "ticket", "ticket_title", "upvotes", "created_at"]
class FeedbackSerializer(serializers.ModelSerializer):
username = serializers.CharField(source="user.username", read_only=True)
class Meta:
model = Feedback
fields = ["id", "ticket", "user", "username", "rating", "comment", "created_at"]
read_only_fields = ["id", "user", "username", "created_at"]

Xet Storage Details

Size:
2.18 kB
·
Xet hash:
8c58c02801ec76e781a5ecea9e5a2366bf29f3a85c1dec085d18f83237c36b44

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.