私が作成したアドオンのプロファイル バージョンを変更すると、常に上記のメッセージが表示されます。
このアドオンはアップグレードされました。古いプロファイル バージョンは 10 でした。新しいプロファイル バージョンは 11 です。このアドオンにはアップグレード手順が定義されていません。アップグレード情報については、アドオンのドキュメントを参照するか、アドオンの作成者に問い合わせてください。
では、アドオンをアップグレードする手順を定義するにはどうすればよいでしょうか?
私が作成したアドオンのプロファイル バージョンを変更すると、常に上記のメッセージが表示されます。
このアドオンはアップグレードされました。古いプロファイル バージョンは 10 でした。新しいプロファイル バージョンは 11 です。このアドオンにはアップグレード手順が定義されていません。アップグレード情報については、アドオンのドキュメントを参照するか、アドオンの作成者に問い合わせてください。
では、アドオンをアップグレードする手順を定義するにはどうすればよいでしょうか?
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 を「*」に設定することができます。