Wagtail API响应中基于非模型的序列化

时间:2019-09-09 20:51:09

标签: wagtail wagtail-apiv2

我正在通过名为sitemap的自定义API端点检索页面列表。该端点的目标是返回 just URL和last_updated标志,以便我可以为我的网站生成一个sitemap.xml文件。我无法将自定义序列化程序应用于模型,因为我不想影响我们使用的常规页面API端点。

是否可以将序列化器应用于API查询集,而不是在模型级别对其进行序列化?

我可能可以通过列表理解来做到这一点,但是自定义序列化器似乎是一个更好的解决方案。

1 个答案:

答案 0 :(得分:0)

所以事实证明,它比我想象的要容易得多。我创建了一个自定义序列化器:

class SitemapSerializer(serializers.Serializer):
    page_name = serializers.CharField()
    url_slug = serializers.CharField()

然后将该序列化程序应用于我的APIEndpoint类:

class SitemapPagesAPIEndpoint(PagesAPIEndpoint):
    base_serializer_class = SitemapSerializer

我认为让我失望的是该财产并未被称为serializer_class