在视图中渲染形状
Render shape in a view
我已经用 ProductPart
创建了 ContentType Product
,但是由于产品 html 相当复杂,我决定使用一个视图 [=41= .cshtml 并手动渲染所有零件信息,而不是使用形状。但我仍然需要为价格渲染一个形状,因为我需要通过服务对其进行格式化,我想在 ProductPart
driver.
中进行
我尝试在此视图中定义新的 zone 并使用 placement.info 放置形状。它所做的只是渲染形状的类型名称而不是 html.
Orchard.DisplayManagement.Shapes.Shape
我什至可以使用这种方法来插入形状吗?或者我应该选择不同的方法?
Driver:
protected override DriverResult Display(ProductPart part, string displayType, dynamic shapeHelper)
{
return ContentShape("Parts_Product_Price",
() => shapeHelper.Parts_Product_Price(
ContentPart: part,
ContentItem: part.ContentItem));
}
Content-Product.cshtml:
@Model.PriceZone()
Placement.info:
<Place Parts_Product_Price="PriceZone:1"/>
在您的 Content-Product.cshtml 视图中您想要这样:
@Display(Model.PriceZone)
我已经用 ProductPart
创建了 ContentType Product
,但是由于产品 html 相当复杂,我决定使用一个视图 [=41= .cshtml 并手动渲染所有零件信息,而不是使用形状。但我仍然需要为价格渲染一个形状,因为我需要通过服务对其进行格式化,我想在 ProductPart
driver.
我尝试在此视图中定义新的 zone 并使用 placement.info 放置形状。它所做的只是渲染形状的类型名称而不是 html.
Orchard.DisplayManagement.Shapes.Shape
我什至可以使用这种方法来插入形状吗?或者我应该选择不同的方法?
Driver:
protected override DriverResult Display(ProductPart part, string displayType, dynamic shapeHelper)
{
return ContentShape("Parts_Product_Price",
() => shapeHelper.Parts_Product_Price(
ContentPart: part,
ContentItem: part.ContentItem));
}
Content-Product.cshtml:
@Model.PriceZone()
Placement.info:
<Place Parts_Product_Price="PriceZone:1"/>
在您的 Content-Product.cshtml 视图中您想要这样:
@Display(Model.PriceZone)