【问题标题】:Joomla, is this a bad thing, injecting view, model and controller to container?Joomla,将视图、模型和控制器注入容器,这是一件坏事吗?
【发布时间】:2017-06-08 03:16:57
【问题描述】:

正如标题所说,我只是想问一下,如果我将所有视图、模型、控制器和其他类(如助手)注入容器 (IoC) 中,这是否是一件坏事,例如下图。

示例:

注意:在这种情况下,我为我的组件创建自己的基本视图、模型和控制器,因此我不使用默认的 Joomla 实例,例如 JModelLegacy::getInstance();JControllerLegacy::getInstance();

谢谢。

【问题讨论】:

    标签: php joomla dependencies containers


    【解决方案1】:

    这就是我所做的。我已经厌倦了不断的更改,这些更改会破坏扩展并在没有任何实际好处的情况下强制重写它们。

    我已经强制 Joomla 的所有 MVC 类,并为它们添加了我的前缀。一切正常。

    我认为一次加载所有内容不会有问题。至少在您显示的列表中。如果你有数百个视图和模型的扩展,你可能会受到伤害。

    另一方面,您为什么要这样做?将您的库与 Joomla 的库分离,它会自动加载所有内容。

    【讨论】:

    • (如果你有数百个视图和模型的扩展,你可能会受到伤害)。是的,我知道,这是我在这里询问它的第一个原因,在上图中,这只是示例,可能总共有超过 50 个以上的视图、模型和控制器。 (另一方面,您为什么要这样做?将您的库与 Joomla 的库分离,它会自动加载所有内容)。不,它们不是自动加载的,它们仅在我需要时才加载,我只是喜欢它,这可以节省我的工作,因为我可以从注入到所有视图、模型和控制器的容器中访问任何内容。
    • 还有一个原因是我想在 Joomla 中创建类似 laravel 的东西,我也只将字符串或命名空间/类名绑定到容器中,除了 Joomla 核心之外,它们中的大多数都不是对象。对不起我的英语不好。
    • 我明白了。无论哪种方式,由您决定如何构建您的扩展,但直接回答您的问题,我不会担心一次加载所有内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-16
    • 1970-01-01
    • 2013-06-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多