refactor(projects): remove project membership access model
This commit is contained in:
@@ -132,15 +132,17 @@ class WorkspaceSerializer(BaseModelSerializer):
|
||||
|
||||
class WorkspaceMembershipSerializer(BaseModelSerializer):
|
||||
user = serializers.SerializerMethodField()
|
||||
user_id = serializers.UUIDField(write_only=True, required=False)
|
||||
|
||||
class Meta:
|
||||
model = WorkspaceMembership
|
||||
fields = BaseModelSerializer.Meta.fields + (
|
||||
"workspace",
|
||||
"user",
|
||||
"role",
|
||||
"is_active",
|
||||
)
|
||||
"user_id",
|
||||
"role",
|
||||
"is_active",
|
||||
)
|
||||
|
||||
def get_user(self, instance):
|
||||
request = self.context.get("request")
|
||||
|
||||
@@ -164,7 +164,11 @@ class WorkspaceMembershipViewSet(ModelViewSet):
|
||||
status=status.HTTP_403_FORBIDDEN,
|
||||
)
|
||||
|
||||
serializer = self.get_serializer(data=request.data)
|
||||
payload = request.data.copy()
|
||||
if payload.get("user") and not payload.get("user_id"):
|
||||
payload["user_id"] = payload.get("user")
|
||||
|
||||
serializer = self.get_serializer(data=payload)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
membership = serializer.save()
|
||||
notify_workspace_membership_added(
|
||||
|
||||
Reference in New Issue
Block a user