(api) allow updating link configuration for a document

We open a specific endpoint to update documents link configuration
because it makes it more secure and simple to limit access rights
to administrators/owners whereas other document fields like title
and content can be edited by anonymous or authenticated users with
much less access rights.
This commit is contained in:
Samuel Paccoud - DINUM
2024-09-08 23:07:47 +02:00
committed by Samuel Paccoud
parent f5c4106547
commit 1e432cfdc2
6 changed files with 195 additions and 0 deletions

View File

@@ -164,6 +164,20 @@ class DocumentSerializer(BaseResourceSerializer):
]
class LinkDocumentSerializer(BaseResourceSerializer):
"""
Serialize link configuration for documents.
We expose it separately from document in order to simplify and secure access control.
"""
class Meta:
model = models.Document
fields = [
"link_role",
"link_reach",
]
# Suppress the warning about not implementing `create` and `update` methods
# since we don't use a model and only rely on the serializer for validation
# pylint: disable=abstract-method