Sitecore 用于子项的Glass Mapper支持体验编辑器
我有Sitecore 8 MVC的视图渲染控件, 此视图渲染控件渲染选定数据源的一些子项Sitecore 用于子项的Glass Mapper支持体验编辑器,sitecore,glass-mapper,sitecore8,sitecore-mvc,Sitecore,Glass Mapper,Sitecore8,Sitecore Mvc,我有Sitecore 8 MVC的视图渲染控件, 此视图渲染控件渲染选定数据源的一些子项 public interface IBase { [SitecoreId] Guid Id { get; set; } } public interface IRootCollection : IBase { [SitecoreChildren] IEnumerable<ICModel> Children {
public interface IBase
{
[SitecoreId]
Guid Id { get; set; }
}
public interface IRootCollection : IBase
{
[SitecoreChildren]
IEnumerable<ICModel> Children { get; set; }
}
[SitecoreType(TemplateId = "{someid}", AutoMap = true)]
public interface ICModel : IBase
{
Image Image { get; set; }
string Title { get; set; }
string Description { get; set; }
}
公共接口IBase
{
[SitecoreId]
Guid Id{get;set;}
}
公共接口IRootCollection:IBase
{
[儿童网站]
IEnumerable子项{get;set;}
}
[SitecoreType(TemplateId=“{someid}”,AutoMap=true)]
公共接口ICModel:IBase
{
图像{get;set;}
字符串标题{get;set;}
字符串说明{get;set;}
}
我有下一个视图渲染
@inherits Glass.Mapper.Sc.Web.Mvc.GlassView<IRootCollection>
@foreach (var item in Model.Children)
{
<div class="col-lg-3">
@RenderImage(item , m => m.Image, isEditable: true)
<h2>@Editable(item, m => m.Title)</h2>
</a>
<div>@Editable(item, m => m.Description)</div>
</div>
}
}
@继承Glass.Mapper.Sc.Web.Mvc.GlassView
@foreach(Model.Children中的var项)
{
@RenderImage(项,m=>m.Image,可编辑:true)
@可编辑(项目,m=>m.Title)
@可编辑(项目,m=>m.Description)
}
}
另外,我有用于视图渲染控制的设置体验编辑器按钮。
我可以通过Experience Editor添加、排序新的ICModel项,但无法删除它。我只能删除全套子项。
如何设置glass mapper以生成对Experience Editor的完全支持。您需要添加一个“删除”按钮并对其进行处理,但是您的模型需要添加
[SitecoreId]
属性才能映射到项目。实际上,我在示例中跳过了它。我刚刚加了。如何为子项添加“删除”按钮。@Arbejdsglæde可能需要一个编辑框来包装子项?@nsgocev是的,但编辑框需要一些属性。。如果我使用just BeginEditFrame,它会破坏UI视图,没有组件名称将路径添加到您的模型([SitecoreInfo(SitecoreInfoType.FullPath)],并尝试如下操作:@foreach(model.Children中的var项){using(BeginEditFrame(item.path)){@RenderImage(item,m=>m.Image,isEditable:true)@Editable(item,m=>m.Title)@Editable(item,m=>m.Description)}