有很多选择。我将尝试描述其中的几个。
如果您的更改仅包括站点策略的通用设置配置文件(./src/my/site/policy/profile/default/ -files)的更改,并且您不想自动升级,您可以简单地更新配置文件-文件并为您的策略重新运行这些特定的导入步骤:
为您的站点打开 ZMI( site/manage
) 并查找portal_setup
.
打开时选择Import -tab portal_setup
。
从 Select Profile或Snapshot -list 中选择您的站点策略的配置文件(您的配置文件的标题由您的策略产品中的registerProfile指令定义)。configure.zcml
profiles.zcml
单击以选择角色/权限映射和工作流工具的导入步骤。
从页面底部,取消选择Include dependencies。
单击导入选定的步骤- 按钮。
如果您的工作流程更新应该修改现有工作流程状态中的权限,请转到portal_workflow
ZMI 上的 -tool 和更新安全设置。
这些步骤应仅重新导入站点策略产品的通用设置配置文件中选定的导入步骤。以这种方式重新导入单个步骤应该是非常安全的,但要小心:portal_setup
屏幕上的意外点击可能会产生不可预知的后果。
这些步骤也可以通过定义一个叫做 Generic Setup Upgrade Step的东西来自动化。
我希望您的站点策略产品的默认通用设置配置文件包含metadata.xml
line <version>1</version>
。
将该行更新为<version>2</version>
.
使用 -directive打开zcml
-file registerProfile
,然后添加
<genericsetup:upgradeDepends
source="1" destination="2" sortkey="1"
title="Upgrade my.site.policy (1 to 2)"
description="Upgrades my.site.policy's default profile from version version 1 to 2."
profile="my.site.policy:default"
import_steps="rolemap workflow"
run_deps="false"
/>
这些步骤应注册从配置文件版本 1 到 2 的升级步骤,该步骤重新导入步骤角色映射和工作流(rolemap.xml和工作流.xml)。您应该能够从 Plone Site Setup 的附加组件屏幕运行升级步骤,在您安装的策略产品之后现在应该有一个升级按钮。
正如@toutpt 所提到的,集体开发人员手册有更多关于升级步骤的示例。如果您曾经想知道,为什么建议在 中使用整数metadata.xml
,通常独立于产品的发布版本号',这就是原因:)。