Python 在Wagtail CMS中自定义发布后flash消息

Python 在Wagtail CMS中自定义发布后flash消息,python,wagtail,Python,Wagtail,我使用Wagtail的after\u create\u page和after\u edit\u page钩子将数据推送到外部服务,我希望根据响应显示错误或成功消息。有没有办法连接到发布页面后出现的flash消息?您可以使用Wagtail内部消息API作为Wagtail\u连接的一部分。这没有文档记录,但我已经在本地使用Wagtaildemo应用程序对其进行了测试 API接受一个请求对象,可用于在请求响应旁边呈现成功/错误/警告消息 所有消息都显示为仅附加,因此您的错误消息将显示在正在创建的页面的

我使用Wagtail的
after\u create\u page
after\u edit\u page
钩子将数据推送到外部服务,我希望根据响应显示错误或成功消息。有没有办法连接到发布页面后出现的flash消息?

您可以使用Wagtail内部消息API作为
Wagtail\u连接的一部分。这没有文档记录,但我已经在本地使用Wagtaildemo应用程序对其进行了测试

API接受一个请求对象,可用于在请求响应旁边呈现成功/错误/警告消息

所有消息都显示为仅附加,因此您的错误消息将显示在正在创建的页面的成功消息下

下面是示例代码

# my_aap/wagtail_hooks.py
from wagtail.wagtailcore import hooks
from wagtail.wagtailadmin import messages


@hooks.register('after_edit_page')
def do_after_page_edit(request, page):
    messages.success(request, "Looking good")


@hooks.register('after_create_page')
def do_after_page_create(request, page):
    messages.error(request, "Failed to send items to external server")
这些消息不会影响编辑或创建页面响应视图的整体HTTP响应

您还可以查看在创建和编辑页面时如何使用内部消息API。您甚至可以非常轻松地在消息上创建按钮