【问题标题】:Broadleaf - Extending DemoSite Admin - Add new Menu and PageBroadleaf - 扩展 DemoSite 管理员 - 添加新菜单和页面
【发布时间】:2015-05-04 15:21:25
【问题描述】:

从最近几天开始,我一直在研究 Broadleaf。我已经设法使用 MySql 在本地 tomcat 上运行它。根据 Broadleaf 的文档,我已经为我的自定义要求扩展了实体。

现在我想在管理员中添加一个菜单选项(在左侧菜单中)。 我不知道 Broadleaf 管理站点从哪里显示网页。左侧菜单如何显示?来自控制器的数据如何与视图绑定?

例如,如果您在 Broadleaf 管理部分访问产品页面,则 URL 将为 http://localhost:8081/admin/product/。在它之后,我设法知道它调用了框架管理模块的AdminProductController.java。我查看了AdminProductController.java 的代码,但不知道如何转发数据以供查看。也没有找到产品jsp/template/html。

我猜管理模块正在使用 EntityForm.java 进行查看。 如果我打算使用简单的jstl,那么可以吗?

我的问题是如何轻松扩展 Heat Clinic 演示站点的管理员以添加新页面、菜单项等?如果有人自定义/扩展了演示站点管理员,请提出建议。

【问题讨论】:

    标签: spring e-commerce broadleaf-commerce


    【解决方案1】:

    我们在http://www.broadleafcommerce.com/docs/core/current/broadleaf-concepts/admin/admin-custom-controllers 上有一些关于如何执行此操作的文档。这里的底线是,如果你想添加一个新页面,那么你可以像在前端一样简单地使用普通的 Spring MVC。唯一的区别是有一些特定的方法可以放置新的模板文件(该页面上记录了)。

    为了回答您的问题,管理员中的大多数 URL 都由 AdminBasicEntityController 动态处理。大多数部分都由这个控制器处理,但在某些情况下我们需要专门覆盖一些东西,比如AdminProductController

    此外,管理员是使用 Thymeleaf 而不是 JSP 构建的,因此如果您想添加更多页面,则需要使用 Thymeleaf 来完成。

    【讨论】:

    • 谢谢。我遵循文档并在侧菜单中添加了带有新项目的新页面。我只有另一个查询。如果我想向现有产品(添加产品)页面添加一个字段。我怎样才能在 UI 上做到这一点?因为所有相关代码都是 broadleaf-open-admin-platform 的一部分,它是一个 jar。
    • 您可以从github.com/BroadleafCommerce/BroadleafCommerce 签出代码并根据您的要求开始更改。
    • 阿米特,我们不建议您自己重新组装阔叶罐。这就像说去检查 Spring 项目并对其进行修改并保留自己的 fork/build 自己,我们也不建议这样做。已经有扩展模式来扩展/覆盖有关管理 UI 应用程序的所有内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-26
    相关资源
    最近更新 更多