在Zikula php和Symfony中为模块设置依赖项注入

时间:2018-09-18 16:45:55

标签: php symfony service zikula

我以前为Zikula模块完成过此操作,但我一定会忘记一些东西。我记得,如果要为表单提供服务,则必须执行三个步骤。

首先,在模块中创建一个名为DependencyInjection的文件夹。在其中创建一个使用YAML加载程序加载您的YAML文件的php类。这是该代码:

class PaustianPMCIModuleExtension extends Extension
{
    public function load(array $configs, ContainerBuilder $container)
    {
        $loader = new YamlFileLoader($container, new FileLocator(realpath(__DIR__ . '/../Resources/config')));

        $loader->load('services.yml');
    }
}

第二步在模块的Resources / config /文件夹中创建一个services.yml文件 第三,在该services.yml文件中,让您的yml配置服务。这是该文件:

services:
  paustian_pmci_module.container.link_container:
    class: Paustian\PMCIModule\Container\LinkContainer
    arguments: ["@translator.default", "@jms_i18n_routing.router", "@zikula_permissions_module.api.permission"]
    tags:
    - { name: zikula.link_container }

  paustian_pmci_module.person_type:
    class: Paustian\PMCIModule\Form\Person
    arguments: ["@translator.default"]
    tags:
      - { name: form.type }

现在,根本没有调用PaustianPMCIModuleExtension类的load函数。我确实清除了陷阱,以强制重新加载所有内容。我知道我想念一些愚蠢的东西,但是我似乎看不到它。

0 个答案:

没有答案