See #212: API viewset

This commit is contained in:
Eliot Berriot 2018-06-19 18:48:43 +02:00
parent 2e4f862387
commit 3ef5f29dd3
No known key found for this signature in database
GPG key ID: DD6965E2476E5C27
6 changed files with 98 additions and 4 deletions

View file

@ -3,6 +3,7 @@ from rest_framework import serializers
from funkwhale_api.common import serializers as common_serializers
from funkwhale_api.music import models as music_models
from funkwhale_api.users import models as users_models
from . import filters
@ -67,3 +68,34 @@ class ManageTrackFileActionSerializer(common_serializers.ActionSerializer):
@transaction.atomic
def handle_delete(self, objects):
return objects.delete()
class ManageUserSerializer(serializers.ModelSerializer):
permissions = serializers.SerializerMethodField()
class Meta:
model = users_models.User
fields = (
"id",
"username",
"email",
"name",
"is_active",
"is_staff",
"is_superuser",
"date_joined",
"last_activity",
"permissions",
"privacy_level",
)
read_only_fields = [
"id",
"email",
"privacy_level",
"username",
"date_joined",
"last_activity",
]
def get_permissions(self, o):
return o.get_permissions(defaults=self.context.get("default_permissions"))