5

私が作成したアドオンのプロファイル バージョンを変更すると、常に上記のメッセージが表示されます。

このアドオンはアップグレードされました。古いプロファイル バージョンは 10 でした。新しいプロファイル バージョンは 11 です。このアドオンにはアップグレード手順が定義されていません。アップグレード情報については、アドオンのドキュメントを参照するか、アドオンの作成者に問い合わせてください。

では、アドオンをアップグレードする手順を定義するにはどうすればよいでしょうか?

4

1 に答える 1

8

configure.zcml (またはできれば configure.zcml に含まれる個別の upgrades.zcml) で、次のようにアップグレード手順を宣言する必要があります。

  <genericsetup:upgradeStep
  source="22"
  destination="23"
  title="Remove such js from registry"
  description=""
  profile="Products.MyProduct:default"
  handler=".upgrades.upgrade_22_to_23"
  />

また、アップグレード手順を実装するには upgrades.py ファイルが必要です (ほんの一例)。

from Products.CMFCore.utils import getToolByName

def upgrade_22_to_23(context):
    js_id = '++resource++blabla/blibli.js'
    jsregistry = getToolByName(context, 'portal_javascripts')
    jsregistry.unregisterResource(js_id)

注: zcml では、以前のプロファイル バージョンからターゲット バージョンにステップを適用する場合は、source を「*」に設定することができます。

于 2013-03-10T07:54:19.187 に答える