from django.db import models from rest_framework import serializers from django.contrib.auth.models import User from backend.models.abstract.my_model import MyModel, MyModelSerializer, MyModelViewSet class UserRestrictedModule(MyModel): """ TODO move to abstract folder ? """ # RGPD made easy with CASCADE owner = models.ForeignKey(User, on_delete=models.CASCADE) # User is anonymised is_anonymous = models.BooleanField(default=True) # To be seen by others than the user, is public needs to be set to True is_public = models.BooleanField(default=False) class Meta: abstract = True class UserRestrictedModuleSerializer(MyModelSerializer): owner = serializers.HiddenField( default=serializers.CurrentUserDefault(), ) # TODO check that this works class Meta: model = UserRestrictedModule fields = '__all__' class UserRestrictedModuleViewSet(MyModelViewSet): serializer_class = UserRestrictedModuleSerializer