mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-04-21 10:29:29 -05:00
Fix: fix breaking api change to document notes user field (#9714)
This commit is contained in:
parent
1b0aa193bd
commit
abf910fd93
@ -877,6 +877,20 @@ class NotesSerializer(serializers.ModelSerializer):
|
|||||||
fields = ["id", "note", "created", "user"]
|
fields = ["id", "note", "created", "user"]
|
||||||
ordering = ["-created"]
|
ordering = ["-created"]
|
||||||
|
|
||||||
|
def to_representation(self, instance):
|
||||||
|
ret = super().to_representation(instance)
|
||||||
|
|
||||||
|
request = self.context.get("request")
|
||||||
|
api_version = int(
|
||||||
|
request.version if request else settings.REST_FRAMEWORK["DEFAULT_VERSION"],
|
||||||
|
)
|
||||||
|
|
||||||
|
if api_version < 8:
|
||||||
|
user_id = ret["user"]["id"]
|
||||||
|
ret["user"] = user_id
|
||||||
|
|
||||||
|
return ret
|
||||||
|
|
||||||
|
|
||||||
class DocumentSerializer(
|
class DocumentSerializer(
|
||||||
OwnedObjectSerializer,
|
OwnedObjectSerializer,
|
||||||
|
@ -2227,6 +2227,26 @@ class TestDocumentApi(DirectoriesMixin, DocumentConsumeDelayMixin, APITestCase):
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def test_docnote_serializer_v7(self):
|
||||||
|
doc = Document.objects.create(
|
||||||
|
title="test",
|
||||||
|
mime_type="application/pdf",
|
||||||
|
content="this is a document which will have notes!",
|
||||||
|
)
|
||||||
|
Note.objects.create(
|
||||||
|
note="This is a note.",
|
||||||
|
document=doc,
|
||||||
|
user=self.user,
|
||||||
|
)
|
||||||
|
self.assertEqual(
|
||||||
|
self.client.get(
|
||||||
|
f"/api/documents/{doc.pk}/",
|
||||||
|
headers={"Accept": "application/json; version=7"},
|
||||||
|
format="json",
|
||||||
|
).data["notes"][0]["user"],
|
||||||
|
self.user.id,
|
||||||
|
)
|
||||||
|
|
||||||
def test_create_note(self):
|
def test_create_note(self):
|
||||||
"""
|
"""
|
||||||
GIVEN:
|
GIVEN:
|
||||||
|
@ -342,10 +342,10 @@ REST_FRAMEWORK = {
|
|||||||
"rest_framework.authentication.SessionAuthentication",
|
"rest_framework.authentication.SessionAuthentication",
|
||||||
],
|
],
|
||||||
"DEFAULT_VERSIONING_CLASS": "rest_framework.versioning.AcceptHeaderVersioning",
|
"DEFAULT_VERSIONING_CLASS": "rest_framework.versioning.AcceptHeaderVersioning",
|
||||||
"DEFAULT_VERSION": "7",
|
"DEFAULT_VERSION": "8",
|
||||||
# Make sure these are ordered and that the most recent version appears
|
# Make sure these are ordered and that the most recent version appears
|
||||||
# last. See api.md#api-versioning when adding new versions.
|
# last. See api.md#api-versioning when adding new versions.
|
||||||
"ALLOWED_VERSIONS": ["1", "2", "3", "4", "5", "6", "7"],
|
"ALLOWED_VERSIONS": ["1", "2", "3", "4", "5", "6", "7", "8"],
|
||||||
# DRF Spectacular default schema
|
# DRF Spectacular default schema
|
||||||
"DEFAULT_SCHEMA_CLASS": "drf_spectacular.openapi.AutoSchema",
|
"DEFAULT_SCHEMA_CLASS": "drf_spectacular.openapi.AutoSchema",
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user