如何在 Orchard Core 模板中访问 FlowPart 的不同小部件?
我知道我们可以通过以下命令访问 FlowPart
{{ Model.Content.FlowPart | shape_render }}
但我需要访问 FlowPart 部分中的每个小部件。
如何在 Orchard Core 模板中访问 FlowPart 的不同小部件?
我知道我们可以通过以下命令访问 FlowPart
{{ Model.Content.FlowPart | shape_render }}
但我需要访问 FlowPart 部分中的每个小部件。
Model.Content 是一个区域形状,通过访问 Model.Content.FlowPart,您实际上是在访问放置在内容区域上的 FlowPart 的形状,而不是实际的 FlowPart 对象
您可以使用以下方法访问 FlowPart 对象和所有小部件对象。
Model.Content.FlowPart.FlowPart.Widgets
FlowPart.Widgets 中的小部件不是形状,因此您需要先使用shape_build_display构建形状
{% for widget in Model.Content.FlowPart.FlowPart.Widgets %}
{{ widget | shape_build_display: "Detail" | shape_render }}
{% endfor %}
如果您直接想处理数据而不是形状,那么您可以使用以下方法访问 JSON 数据以获取任何 ContentItem 的 JSON
{{ Model.ContentItem.Content }}
要获取 FlowPart JSON 对象,您可以执行以下操作
{{ Model.ContentItem.Content.FlowPart }}
或获取小部件 JSON 数组的列表
{{ Model.ContentItem.Content.FlowPart.Widgets }}