Orchardcms Orchard中的项目模板与零件模板

Orchardcms Orchard中的项目模板与零件模板,orchardcms,orchardcms-1.6,orchardcms-1.7,Orchardcms,Orchardcms 1.6,Orchardcms 1.7,我在学习果园,我上了一些多景观课程。它涵盖了零件模板,但现在我正在阅读这篇文章:其中有一部分名为:项目模板。我很困惑。我想我以前从未遇到过这个概念。有什么区别?让我们举一个例子,我有一个内容类型电影,内容部分为电影。我可以使用零件模板覆盖其渲染方式。那么在这种情况下,我将在哪里使用项目模板呢?写了一篇关于这个问题的博客文章。无耻插头: 措辞不是特别清楚,我同意。让我们看看能不能澄清一下 内容类型:电影 标题部分 导演部 学习艺术 (因此,您有一个名为movie的内容类型,其中附加了3个部分)

我在学习果园,我上了一些多景观课程。它涵盖了零件模板,但现在我正在阅读这篇文章:其中有一部分名为:项目模板。我很困惑。我想我以前从未遇到过这个概念。有什么区别?让我们举一个例子,我有一个内容类型电影,内容部分为电影。我可以使用零件模板覆盖其渲染方式。那么在这种情况下,我将在哪里使用项目模板呢?

写了一篇关于这个问题的博客文章。无耻插头:

措辞不是特别清楚,我同意。让我们看看能不能澄清一下

内容类型:电影

  • 标题部分
  • 导演部
  • 学习艺术
(因此,您有一个名为movie的内容类型,其中附加了3个部分)

我们希望所有零件都显示在详细视图中,而只有标题部分显示在摘要显示中。所以我们使用placement.info

<Match ContentType="Movie">
  <Match DisplayType="Summary">
    <Place Parts_TitlePart="Summary:1" />
    <Place Parts_DirectorPart="-" />
    <Place Parts_StudioPart="-" />
  </Match>

  <Match DisplayType="Detail">
    <Place Parts_TitlePart="Content:1" />
    <Place Parts_DirectorPart="Movie:1" />
    <Place Parts_StudioPart="Movie:2" />
  </Match>
</Match>

(为了清晰起见,使用明确的符号)

Placement主要定义内容类型的内容部分放置位置。摘要、内容和电影是内容项中的“区域”,您可以将零件指定给这些区域以显示它们。让我们继续在一个名为Content-Movie.Detail.cshtml的文件中定义内容和电影区域(这将是一个“项目模板”)

@使用Orchard.Utility.Extensions;
)要为您生成这些内容,它将创建默认区域(我相信是页眉、元数据、内容和页脚)和相关的html。)

我们的零件现在应该显示在正确的位置,我们可能希望更改标题的显示方式。因此,我们可以创建一个“零件模板”,Parts.Title.cshtml

<h1>Movie: @Model.Title </h1>
电影:@Model.Title
总而言之内容类型由许多内容部分组成部分模板覆盖内容部分和项目模板覆盖定义了区域的内容类型的布局Placement.info将内容部分定向到要显示的区域

希望有帮助

@using Orchard.Utility.Extensions;

<article class="content-item">
   <div class="content">
      @Display(Model.Summary)
   </div>
</article>
<h1>Movie: @Model.Title </h1>