跳转到主要内容

从Wagtail的一个实例导出到另一个实例的页面

项目描述

wagtail-import-export

从一个Wagtail实例导出到另一个实例的页面。

已发布的页面及其已发布的子页面可以通过API或文件从源站点导出,并导入到目标站点下的现有页面。

目标站点应具有与源站点相同的页面模型,并具有兼容的迁移。

安装

pip install wagtail-import-export

现在将其添加到项目的 INSTALLED_APPS

INSTALLED_APPS = [
    # ...
    'wagtailimportexport',
    # ...
]

将以下内容添加到项目的 urls.py(注意,include(wagtailimportexport_urls) 行必须出现在定义Wagtail默认路由的 include(wagtail_urls) 行之上)

from wagtailimportexport import urls as wagtailimportexport_urls

urlpatterns = [
    # ...
    url(r'', include(wagtailimportexport_urls)),
    url(r'', include(wagtail_urls)),
]

(wagtailimportexport.urls 包含导出API端点。管理URL在 wagtailimportexport.admin_urls 中,并自动注册。)

现在您应该在Wagtail管理菜单中看到一个 '导入/导出' 项。

配置

通过API导入时,默认情况下只导出已发布的页面。如果子页面未发布,则删除它及其所有子页面(即使其中一些子页面是已发布的)。

可以通过在源站点添加设置来导出源页面下的所有页面

WAGTAILIMPORTEXPORT_EXPORT_UNPUBLISHED = True

不应在公共源站点中使用此设置,因为API未经验证,因此会向任何人公开未发布的内容。

限制

如果导入的内容包含指向页面模型的任何外键,则这些键将根据目标页面是否也是导入的一部分而更新为新的页面ID,否则将保持不变。如果目标页面既不是导入的一部分,在目标网站上也不存在,则可能因数据库完整性错误而失败。

富文本或StreamField内容中的页面引用不会重写以反映新的页面ID。

导入按树路径顺序处理;首先导入基本Page记录,然后导入特定页面子类数据。如果导入了一个包含指向Page特定子类的外键的模型,并且该外键的目标页面在导入中但晚于树路径顺序出现,这将因完整性错误而失败(因为相关记录在那个点尚未创建)。

非页面数据,如图像、文档或片段,不包括在导入中;用户负责确保从导入页面引用的所有对象已在目标网站上存在(具有匹配的ID)。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

wagtail-import-export-0.2.tar.gz (8.3 kB 查看哈希)

上传时间

构建分发

wagtail_import_export-0.2-py2.py3-none-any.whl (12.9 kB 查看哈希)

上传时间 Python 2 Python 3

支持者:

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面