Workflow 为Plone 4自定义内容类型创建工作副本
我在我的软件包中创建了一个自定义的Plone内容类型,即Workflow 为Plone 4自定义内容类型创建工作副本,workflow,plone,Workflow,Plone,我在我的软件包中创建了一个自定义的Plone内容类型,即my.product 我需要集成工作副本支持:以便“已发布”文档(在我的例子中,是已发布的内容类型)在编辑时保持在线。基本上,我想利用提供的“工作副本支持(迭代)”来实现。这将使我能够签入/签出我的更改 在Plone 4中,使用原型的自定义内容类型是否可能实现这一点?如果是,你会怎么做?我从未使用过plone.app.iterate,但这是解决问题的通用方法 操作由plone.app.iterate GenericSetup配置文件安装。您
my.product
我需要集成工作副本支持:以便“已发布”文档(在我的例子中,是已发布的内容类型)在编辑时保持在线。基本上,我想利用提供的“工作副本支持(迭代)”来实现。这将使我能够签入
/签出
我的更改
在Plone 4中,使用原型的自定义内容类型是否可能实现这一点?如果是,你会怎么做?我从未使用过plone.app.iterate,但这是解决问题的通用方法 操作由plone.app.iterate GenericSetup配置文件安装。您可以在此处看到操作: 请注意行*available_expr*,该行指示何时显示操作或不显示操作。它使用条件指向辅助视图 视图在这里定义
最有可能的故障来自
if not interfaces.iiteraaware.providedBy
条件。您的自定义内容必须声明此接口。但是,您可以在checkin_allowed(self)
中设置一个pdb断点来确认这一点,然后逐行执行,查看您的内容类型发生了什么。我在my.product/my/product/profiles/default
文件夹中添加了以下两个文件,它似乎可以工作:
diff_tool.xml
<?xml version="1.0"?>
<object>
<difftypes>
<type portal_type="MyCustomType">
<field name="any" difftype="Compound Diff for AT types"/>
</type>
</difftypes>
</object>
repositorytool.xml
<?xml version="1.0"?>
<repositorytool>
<policymap>
<type name="MyCustomType">
<policy name="at_edit_autoversion"/>
<policy name="version_on_revert"/>
</type>
</policymap>
</repositorytool>
自定义原型类型与库存类型没有区别;这应该行得通™.就我而言,情况并非如此。我添加了一个页面,可以清楚地看到Actions下拉列表下的选项。但不是在我的自定义类型上。我可以看到灵巧类型()有一个解决方法,我想知道这是否适用于自定义类型。这也可以通过类型控制面板配置TTW。