0

我的内容定义中有一个字段CoverImage,我在管理控制面板的“内容定义”菜单中定义了该字段。BlogPost我假设每当 aBlogPost被渲染时,我都可以Model从相关的替代项中的某个地方访问它,例如 viaModel.ContentItem.BlogPostPart.Field["CoverImage"]或类似的东西。

但实际上,我根本找不到Model引用自定义字段的任何字段,而其他字段(例如Model.ContentItem.BlogPostPart.Titleor Model.ContentItem.BlogPostParts.Text)就可以了。谁能解释一下?

[更新]访问@Model.ContentItem.BlogPostPart.CoverImage.Value给出了一个错误:'Orchard.Blogs.Models.BlogPostPart' does not contain a definition for 'CoverImage'

CoverImage我在形状追踪中找不到:

模型 .

这是我在内容定义中定义CoverImage字段的方式:Blog Post

场地

4

2 回答 2

2

您正在寻找的“blahblah”是 ContentItem,通常一部分是:

  Model.ContentItem.NamePart.PropertyName

而对于领域是

  Model.ContentItem.NamePart.NameField.Value

所以在你的情况下,应该是这样的:

  Model.ContentItem.BlogParts.CoverImage.Value
于 2013-12-17T20:51:51.420 回答
0

jmgomez 是对的……正如他所说:

@{

动态嘿=(动态)模型;
var yay = hey.ContentItem.BlogPost.CoverImage.MediaParts[0].MediaPart;

}

<img src='@yay.MediaUrl' />

作为对任何感兴趣的人的一点解释......默认部分附加到内容项,其中附加了字段。它显示为 ContentPart,但实际上是使用您的内容类型的名称访问的,因此在这种情况下,BlogPost 是 Content Type,CoverImage 是字段的名称。

于 2013-12-18T10:21:41.970 回答