diff options
author | 2018-09-01 23:02:24 +0200 | |
---|---|---|
committer | 2018-09-01 23:02:58 +0200 | |
commit | 96a390e49cf024501993b8116e55cd9c63c58c3a (patch) | |
tree | 2ae4af1170204fab1e1747e0e3c7f85690ed242b /api/serializers.py | |
parent | Ignore settings from coverage. (diff) |
Add the member viewset.
Diffstat (limited to 'api/serializers.py')
-rw-r--r-- | api/serializers.py | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/api/serializers.py b/api/serializers.py index 7a3a95e3..dc4d4a78 100644 --- a/api/serializers.py +++ b/api/serializers.py @@ -1,6 +1,7 @@ -from rest_framework.serializers import ModelSerializer +from rest_framework.serializers import ModelSerializer, PrimaryKeyRelatedField +from rest_framework_bulk import BulkSerializerMixin -from .models import DocumentationLink, OffTopicChannelName, SnakeName +from .models import DocumentationLink, Member, OffTopicChannelName, Role, SnakeName class DocumentationLinkSerializer(ModelSerializer): @@ -22,3 +23,18 @@ class SnakeNameSerializer(ModelSerializer): class Meta: model = SnakeName fields = ('name', 'scientific') + + +class RoleSerializer(ModelSerializer): + class Meta: + model = Role + fields = ('id', 'name', 'colour', 'permissions') + + +class MemberSerializer(BulkSerializerMixin, ModelSerializer): + roles = PrimaryKeyRelatedField(many=True, queryset=Role.objects.all()) + + class Meta: + model = Member + fields = ('id', 'avatar_hash', 'name', 'discriminator', 'roles') + depth = 1 |