【问题标题】:Custom Part not rendering in Widget in Orchard CMS自定义部件未在 Orchard CMS 的小部件中呈现
【发布时间】:2014-06-23 06:04:50
【问题描述】:

交叉邮件:https://orchard.codeplex.com/discussions/549374

我正在使用 Orchard 1.8,并且我已经构建了一个附加到小部件的部件。这是一个基本部分,但我在渲染模板时遇到了问题。这是我的代码:

型号

public class AppsWidgetRecord : ContentPartRecord {        
}

public class AppsWidgetPart : ContentPart<AppsWidgetRecord> {    
}

驱动程序

public class AppsWidgetDriver : ContentPartDriver<AppsWidgetPart>
{
    protected override DriverResult Display(AppsWidgetPart part, string displayType, dynamic shapeHelper)
    {
        return ContentShape("Parts_AppsWidget",
            () => shapeHelper.Partial(
                TemplateName: "Parts/AppsWidget"
        ));
    }
}

我在 View/Parts 下有一个 AppsWidget.cshtml

迁移

        #region Define Apps Widget

        ContentDefinitionManager.AlterPartDefinition(
            typeof(AppsWidgetPart).Name, cfg => cfg.Attachable());

        ContentDefinitionManager.AlterTypeDefinition("AppsWidget", cfg => cfg
            .WithPart("WidgetPart")
            .WithPart(typeof(AppsWidgetPart).Name)
            .WithPart("CommonPart")
            .WithSetting("Stereotype", "Widget"));

        #endregion

        #region Create Apps Widget

        var appsWidget = _widgetsService.CreateWidget(homepageLayer.Id, "AppsWidget", "Apps", "5", "AfterContent");
        appsWidget.RenderTitle = true;
        appsWidget.Name = "apps";
        _contentManager.Publish(appsWidget.ContentItem);

        #endregion

展示位置

<Place Parts_AppsWidget="AfterContent:5" />

小部件渲染良好,但部件的模板根本不渲染。当我塑造跟踪时,在小部件下看不到appswidgetpart,但是当我检查模型时它就在那里。

我也调试了驱动中的显示功能,没有出现问题。我也没有在日志中看到任何错误。

有什么想法吗?

【问题讨论】:

  • 您似乎缺少一个处理程序。另外,如果它是空的,为什么还要有一个记录类?

标签: asp.net-mvc-4 orchardcms orchardcms-1.8


【解决方案1】:

我不确定您是否在驱动程序中正确显示了形状。我通常是这样做的。

protected override DriverResult Display(AppsWidgetPart part, string displayType, dynamic shapeHelper)
{
    return ContentShape(
        "Parts_AppsWidget",
        () => shapeHelper.Parts_AppsWidget(ContentItem: part.ContentItem));
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多