40 lines
1023 B
Python
40 lines
1023 B
Python
from rest_framework import serializers
|
|
from backend.models import Snippet, SnippetParticipant
|
|
from django.contrib.auth.models import User
|
|
|
|
|
|
class UserSerializer(serializers.ModelSerializer):
|
|
snippets = serializers.PrimaryKeyRelatedField(many=True, queryset=Snippet.objects.all())
|
|
|
|
class Meta:
|
|
model = User
|
|
fields = ['id', 'username', 'snippets']
|
|
|
|
|
|
class SnippetSerializer(serializers.ModelSerializer):
|
|
class Meta:
|
|
model = Snippet
|
|
fields = [
|
|
"id",
|
|
"created",
|
|
"title",
|
|
"linenos",
|
|
"language",
|
|
"style",
|
|
"owner",
|
|
"access"
|
|
]
|
|
read_only_fields = ["created", "owner"]
|
|
owner = serializers.ReadOnlyField(source='owner.username')
|
|
|
|
|
|
class SnippetParticipantSerializer(serializers.ModelSerializer):
|
|
class Meta:
|
|
model = SnippetParticipant
|
|
fields = [
|
|
"id",
|
|
"user",
|
|
"snippet"
|
|
]
|
|
read_only_fields = ["id"]
|