标题几乎概括了这个问题,早期的文档谈论的是/ revision端点,但是我找不到它是否曾经实现过。
g具有出色的功能来编辑和保存页面,我只需要预览草稿在被应用程序占用时的外观即可。
该API旨在仅提供实时版本的页面,以避免泄漏不打算公开的信息。但是,您可以通过子类化来覆盖此行为PagesAPIEndpoint-例如:
from django.http import Http404
from rest_framework.response import Response
from wagtail.api.v2.endpoints import PagesAPIEndpoint
class DraftPagesAPIEndpoint(PagesAPIEndpoint):
def detail_view(self, request, pk):
instance = self.get_object()
if request.GET.get('draft'):
instance = instance.get_latest_revision_as_page()
elif not instance.live:
raise Http404
serializer = self.get_serializer(instance)
return Response(serializer.data)
Run Code Online (Sandbox Code Playgroud)
然后,在注册URL端点时,请使用此类代替PagesAPIEndpoint:
api_router.register_endpoint('pages', DraftPagesAPIEndpoint)
Run Code Online (Sandbox Code Playgroud)
这将使您能够传递?draft=trueURL以获取草稿版本。
| 归档时间: |
|
| 查看次数: |
301 次 |
| 最近记录: |