[英]Orchard CMS. How correct display shape in zone?
我有一個模塊Orchard.MyModule。 模塊中的形狀為Orchard.Web \\ Modules \\ Orchard.MyModule \\ Views \\ Parts \\ Header.cshtml
在Header.cshtml中是代碼
...
Model.ContentItem.Id
...
如果在layout.cshtml中
Func<dynamic, dynamic> Zone = x => Display(x);
@if(Model.Header != null)
{
@Zone(Model.Header)
}
死亡頁面始終為黃頁,並且Model.ContentItem = null。
如果在layout.cshtml中將其刪除,則將出現以下情況:1)在管理面板中的Header區域小部件Header.cshtml中設置。 ---不顯示2)在“管理器”面板的“標題”區域為空,在“ BeforeContent”區域為Header.cshtml。 ---將顯示標題形狀(Header.cshtml)3)所有區域均為空。 -不顯示
Shape Header.cshtml重新定義“標題”區域? 如何在Header區域Header.cshtml中插入並正確顯示它?
我假設驅動程序正在顯示Parts/Header.cshtml
。
protected override DriverResult Display(MyPart part, string displayType, dynamic shapeHelper) {
return ContentShape("Parts_Header", () => shapeHelper.Parts_Header();
}
像這樣嗎
然后,您可以采用形狀類型(即ContentShape中的第一個參數:“ Parts_Header”),然后將此部分發送到模塊Placement.info
的主布局區域,如下所示:
<Place Parts_Header="/Header:1" />
導入部分為“ / Header”,它告訴Orchard此形狀應顯示在主布局區域中
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.