Python 如何在Wagtail中无头创建页面?

Python 如何在Wagtail中无头创建页面?,python,django,wagtail,headless-cms,Python,Django,Wagtail,Headless Cms,我有没有办法模仿创建页面的摇摆行为 我能想到的唯一方法是完全复制他们在管理界面中单击“发布”时发送的POST请求,但那太可怕了 我需要这个,因为我需要从api获取产品列表,处理它们并将它们插入到我的数据库中。我更愿意通过wagtail这样做,这样我就不会偏离我的CMS 在理想的情况下,这将是对某个api端点的调用,我在请求体中提供了所需的字段。为什么不创建一个管理命令呢 您可以使用管理命令(或任何其他触发器)执行以下操作: from wagtail.core.models import Page

我有没有办法模仿创建页面的摇摆行为

我能想到的唯一方法是完全复制他们在管理界面中单击“发布”时发送的
POST
请求,但那太可怕了

我需要这个,因为我需要从api获取产品列表,处理它们并将它们插入到我的数据库中。我更愿意通过wagtail这样做,这样我就不会偏离我的CMS


在理想的情况下,这将是对某个api端点的调用,我在请求体中提供了所需的字段。

为什么不创建一个管理命令呢


您可以使用管理命令(或任何其他触发器)执行以下操作:

from wagtail.core.models import Page

from myapp.models import CustomPage


parent_page = Page.objects.filter(slug="parent_page")[0] # get a suitable parent 

page = CustomPage(
        title="Sample name",
        depth=4,
        path="Some random path",
 )

parent_page.add_child(instance=page)

Wagtail页面只是Django模型——您可以通过编程方式很好地创建它们。