2

パッケージにカスタム Plone コンテンツ タイプを作成しましたmy.product

作業コピーのサポートを統合する必要があります。これにより、「公開された」ドキュメント (私の場合は公開されたコンテンツ タイプ) が編集中もオンラインのままになります。基本的には、 plone.app.iterateが提供する「Working Copy Support (Iterate)」を利用して、ここで説明することを実現したいと考えています。check-inこれにより、自分の変更を行う能力が得られcheck-outます。

これは Archetypes を使用したカスタム コンテンツ タイプで Plone 4 で可能ですか? はいの場合、どのように対処しますか?

4

2 に答える 2

2

I added the following two files inside my.product/my/product/profiles/default folder and it appears to work:

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>
于 2013-05-09T05:24:18.250 に答える
1

私は plone.app.iterate を使ったことはありませんが、これは問題を解決するための一般的なアプローチです。

アクションはplone.app.iterate GenericSetup プロファイルによってインストールされます。ここでアクションを確認できます。

https://github.com/plone/plone.app.iterate/blob/master/plone/app/iterate/profiles/default/actions.xml

アクションをいつ表示するかを示す *available_expr* 行に注意してください。条件付きのヘルパー ビューを指します。

ビューはここで定義されます

コンテンツ アイテムがアーカイブ可能かどうかに対して実行されるチェック

ほとんどの場合、障害はif not interfaces.IIterateAware.providedBy状態に起因します。カスタム コンテンツは、このインターフェイスを宣言する必要があります。ただし、これを確認するには、pdb ブレークポイントを挿入しcheckin_allowed(self)、行ごとにステップ実行して、コンテンツ タイプで何が起こるかを確認します。

于 2013-05-08T19:19:13.730 に答える