0

以前に Zikula モジュールでこれを行ったことがありますが、何かを忘れているに違いありません。私が覚えているように、フォームにサービスを提供したい場合は、3 つのステップを実行する必要があります。

まず、モジュールに 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');
    }
}

2 番目に、モジュールの Resources/config/ フォルダーに services.yml ファイルを作成します。3 番目に、その 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 関数はまったく呼び出されていません。すべてのリロードを強制するためにキャッチをクリアしました。何かばかげたことを見逃していることはわかっていますが、それを見ることができないようです。

4

0 に答える 0