0

クロスポスト: https://orchard.codeplex.com/discussions/461867

完全なシナリオは次のとおりです。すべてのカスタム フィールド (イントロ テキスト、議題など) を含む EventItem パーツを持つ EventItem コンテンツ アイテムがあります。トラックと呼ばれる別のパーツが EventItem にアタッチされています。問題は、トラック内にゾーンを追加して、動的ゾーンを介した配置を介して EventItem からトラックにフィールドをレンダリングできるようにすることです。データを取得してパーツ内でレンダリングできることはわかっていますが、柔軟性を持たせて配置/ゾーンを使用したいと考えています。

以下のContent-EventItem.Detail代替のような代替を使用すると、動的ゾーンが簡単になることはわかっています。

@Display(Model.ImageArea)

ただし、私の部分はビューモデルを使用しているため、使用するプロパティ/オブジェクトを事前に定義する必要があります。このブログも読んだことがありますが、うまくいきません 。 .aspx

これが私の完全なコードです(コードの無関係な部分は省略されています):

トラック パーツ テンプレート

@{
Func<dynamic, dynamic> Zone = x => Display(x);
}

<div id="Overview-Tab" class="track-tab">
   @Zone(Model.Overview)
</div>

パーツ ビューモデルの追跡

public class DisplayAllViewModel
{
    //public Shape Overview { get; set; }
    public object Overview { get; set; }
    public List<TrackItem> Tracks { get; set; }
}

EventItem の配置

<Match ContentType="EventItem">
    <Match DisplayType="Detail">
    <Place
        Fields_Sections="Overview:1"
        Parts_Tracks="Content:2.5.6" />
    </Match>
</Match>

概要ゾーンを使用すると、[セクション] フィールドがまったく表示されません。

アドバイスや情報をいただければ幸いです。ありがとう!

4

2 に答える 2

1

@Display(WorkContext.Layout.Header) の部分に追加するだけです

于 2014-01-27T07:00:59.027 に答える