Initial commit
This commit is contained in:
0
env/lib/python3.10/site-packages/wagtail/documents/api/v2/__init__.py
vendored
Normal file
0
env/lib/python3.10/site-packages/wagtail/documents/api/v2/__init__.py
vendored
Normal file
BIN
env/lib/python3.10/site-packages/wagtail/documents/api/v2/__pycache__/__init__.cpython-310.pyc
vendored
Normal file
BIN
env/lib/python3.10/site-packages/wagtail/documents/api/v2/__pycache__/__init__.cpython-310.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.10/site-packages/wagtail/documents/api/v2/__pycache__/serializers.cpython-310.pyc
vendored
Normal file
BIN
env/lib/python3.10/site-packages/wagtail/documents/api/v2/__pycache__/serializers.cpython-310.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.10/site-packages/wagtail/documents/api/v2/__pycache__/views.cpython-310.pyc
vendored
Normal file
BIN
env/lib/python3.10/site-packages/wagtail/documents/api/v2/__pycache__/views.cpython-310.pyc
vendored
Normal file
Binary file not shown.
23
env/lib/python3.10/site-packages/wagtail/documents/api/v2/serializers.py
vendored
Normal file
23
env/lib/python3.10/site-packages/wagtail/documents/api/v2/serializers.py
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
from rest_framework.fields import Field
|
||||
|
||||
from wagtail.api.v2.serializers import BaseSerializer
|
||||
from wagtail.api.v2.utils import get_full_url
|
||||
|
||||
|
||||
class DocumentDownloadUrlField(Field):
|
||||
"""
|
||||
Serializes the "download_url" field for documents.
|
||||
|
||||
Example:
|
||||
"download_url": "http://api.example.com/documents/1/my_document.pdf"
|
||||
"""
|
||||
|
||||
def get_attribute(self, instance):
|
||||
return instance
|
||||
|
||||
def to_representation(self, document):
|
||||
return get_full_url(self.context["request"], document.url)
|
||||
|
||||
|
||||
class DocumentSerializer(BaseSerializer):
|
||||
download_url = DocumentDownloadUrlField(read_only=True)
|
||||
23
env/lib/python3.10/site-packages/wagtail/documents/api/v2/views.py
vendored
Normal file
23
env/lib/python3.10/site-packages/wagtail/documents/api/v2/views.py
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
from wagtail.api.v2.filters import FieldsFilter, OrderingFilter, SearchFilter
|
||||
from wagtail.api.v2.views import BaseAPIViewSet
|
||||
|
||||
from ... import get_document_model
|
||||
from .serializers import DocumentSerializer
|
||||
|
||||
|
||||
class DocumentsAPIViewSet(BaseAPIViewSet):
|
||||
base_serializer_class = DocumentSerializer
|
||||
filter_backends = [FieldsFilter, OrderingFilter, SearchFilter]
|
||||
body_fields = BaseAPIViewSet.body_fields + ["title"]
|
||||
meta_fields = BaseAPIViewSet.meta_fields + ["tags", "download_url"]
|
||||
listing_default_fields = BaseAPIViewSet.listing_default_fields + [
|
||||
"title",
|
||||
"tags",
|
||||
"download_url",
|
||||
]
|
||||
nested_default_fields = BaseAPIViewSet.nested_default_fields + [
|
||||
"title",
|
||||
"download_url",
|
||||
]
|
||||
name = "documents"
|
||||
model = get_document_model()
|
||||
Reference in New Issue
Block a user