1

お問い合わせフォーム用に開発されたカスタム コンテンツ アイテムがあり、移行は次のとおりです。

             ContentDefinitionManager.AlterTypeDefinition("Bt Enquiry Page", cfg => cfg
            .WithPart("TitlePart")
            .WithPart("AutoroutePart")
             .WithPart("AutoroutePart", builder => builder
              .WithSetting("AutorouteSettings.AllowCustomPattern", "true")
              .WithSetting("AutorouteSettings.AutomaticAdjustmentOnEdit", "false")
              .WithSetting("AutorouteSettings.PatternDefinitions", "[{Name:'Title', Pattern: '{Content.Slug}', Description: 'my-page'}]")
              .WithSetting("AutorouteSettings.DefaultPatternIndex", "0"))
            .WithPart("MenuPart")
            .WithPart("TagPart")
            .WithPart("BodyPart")
            .WithPart("CommonPart")
            .WithPart("EnquirySettingPart")
            .Creatable()
            .Indexed()
            );

モジュール機能を無効にしても、なぜかカスタム コンテンツ アイテム「Bt Inquiry Page」が管理メニューから消えません。これは、機能が無効になっていてもコンテンツ アイテムのインスタンスを作成できることを意味します。それはデフォルトの動作ですか?私は何かが欠けていますか、誰かがいくつかの光を当てることができますか.

-ジョージ

4

1 に答える 1

0

これはデフォルトの動作です。

モジュールを無効にすると、Orchard は移行によって行われた変更をロールバックしません。移行はかなり複雑になり、自動的に簡単にロールバックできない (またはすべきではない) ことを行う可能性があります。

ただし、次のいずれかの方法で自由にクリーンアップを行うことができます。

  • 古いコンテンツ タイプをダッシュ​​ボードから削除する ( Content -> Content Types<= 1.6 またはContent Definition>=1.7 で)
  • イベントをフックしIFeatureEventHandlerて使用し、クリーンアップ タスクを実行するEnabled/Disabled
于 2013-09-16T15:38:48.177 に答える