Orchard - 如何在摘要视图中显示内容项的更多字段

时间:2011-06-19 19:36:30

标签: asp.net-mvc-3 orchardcms

假设我有一个产品,我添加了一个名为SmallImage的图像字段。

当我显示产品列表时,我希望小图像位于视图中。 当我进入分区列表时,我得到了默认的摘要视图,如下所示:

<article class="content-item @contentTypeClassName">
    <header>
        @Display(Model.Header)
        @if (Model.Meta != null) {
        <div class="metadata">
            @Display(Model.Meta)
        </div>
        }
    </header>
    @Display(Model.Content)
    @if(Model.Footer != null) {
    <footer>
        @Display(Model.Footer)
    </footer>
    }
</article>

@Display(Model.Content)如何生成HTML?

.cshtml 文件在哪里我可以将 @ Html.Image(Model.SmallImage)放入?

修改

好的,我在模型中找到了该属性: Model.ContentItem.Product.SmallImage.FileName ,所以我只需要知道模板文件的位置。

THX! 丹

奖金问题: 在任何列表视图中使用设计器工具。转到区域[内容] .Content.List 。在 Shape 下表示有两个备用视图。一个是MyTheme / Views / List.Html。如果你单击“创建”,它会显示这里不允许相对虚拟路径'Orchard.Core.Shapes.CoreShapes :: List'。这是否意味着确实没有替代品查看?

1 个答案:

答案 0 :(得分:1)

我手动创建了文件,该文件在红利问题中给我错误,这让我得到了图片。 (的列表的URL-products.cshtml

 <div>
    @foreach(var item in Model)
    {
        <div>@item.Title.ToString()</div>

        var division = item.ContentItem.Division;
        var smallImage = (Contrib.ImageField.Fields.ImageField) division.ListImage;

        if(smallImage.FileName != null)
        {
            <div>@Html.Image(smallImage.FileName, null, new { Width=smallImage.Width, Height=smallImage.Height }) </div>    
        }   
    }
 </div>