果园预测&折叠手风琴

时间:2014-01-22 21:55:48

标签: asp.net-mvc twitter-bootstrap razor accordion orchardcms

我已经创建了自定义内容类型和它们的Projection页面,但不能将所有各种部分和字段塞进Bootstrap Collapse

我遇到两个问题:我在Layout的Property Rewrite Results中有太多字符;或者,如果我将@Display(Model.ContentItem.FunOpp.FunTitle.Value)添加到自定义.cshtml形状,我会收到'Orchard.ContentManagement.ContentItem' does not contain a definition for 'FunOpp'错误;或类似的东西取决于我的布局。

自定义内容类型定义是:

字段:

  • 赞助商(文本字段)
  • 资助机会(链接字段)
  • 资助标题(文本字段)
  • 结束/截止日期(文本字段)
  • 资助机会
  • 号码(文字字段)
  • 手风琴折叠编号(文字字段)

件:

我需要资金标题为手风琴标题;以及剩余的所有Field&部分是手风琴内部。

有很多内容,Bootstrap的Collapse需要很多标记,所以如果我去Accordion-Inner的Token / Rewrite Results路线,显然我会收到“太多字符”错误。

然而,我不知道足够的MVC / Razor来确定我为什么会收到Model.ContentItem错误。

任何帮助都会受到赞赏,无论如何将重写输出中的标记组合起来保存字符;或者显示各种@ Model.ContentItem.FunOpp.xxx.Value

的方法

2 个答案:

答案 0 :(得分:0)

我并不太了解管道,但Content Item是一个类,但也是一个动态对象。您目前正在尝试从类中获取FunOpp,该类没有这样的属性,只有动态对象内容项才有。所以你需要做...

@{
  dynamic item = Model.ContentItem;
  var funtitle = item.FunOpp.FunTitle.Value;
}

沿着这些方向的东西

答案 1 :(得分:0)

启用模块“Shape Tracer”以查看模型的确切结构。这是了解果园正在做什么的最好方法。