简体   繁体   English

依赖不存在的服务“SonataMedia/MediaAdmin/inner_row_media.html.twig”

[英]Dependency on a non-existent service “SonataMedia/MediaAdmin/inner_row_media.html.twig”

Using Sonata's Easy Extends tool, I am extending the MediaAdmin base class and overriding the existing service for that class.使用 Sonata 的 Easy Extends 工具,我正在扩展 MediaAdmin 基类并覆盖该类的现有服务。 In doing so, I've converted this XML service definition (in the vendor folder):为此,我转换了此 XML 服务定义(在 vendor 文件夹中):

    <service id="sonata.media.admin.media" class="%sonata.media.admin.media.class%" public="true">
        <tag name="sonata.admin" manager_type="orm" group="%sonata.media.admin.groupname%" label_catalogue="%sonata.media.admin.media.translation_domain%" label="media" label_translator_strategy="sonata.admin.label.strategy.underscore" icon="%sonata.media.admin.groupicon%"/>
        <argument/>
        <argument>%sonata.media.admin.media.entity%</argument>
        <argument>%sonata.media.admin.media.controller%</argument>
        <argument type="service" id="sonata.media.pool"/>
        <argument type="service" id="sonata.media.manager.category" on-invalid="null"/>
        <call method="setModelManager">
            <argument type="service" id="sonata.media.admin.media.manager"/>
        </call>
        <call method="setTranslationDomain">
            <argument>%sonata.media.admin.media.translation_domain%</argument>
        </call>
        <call method="setTemplates">
            <argument type="collection">
                <argument key="inner_list_row">@SonataMedia/MediaAdmin/inner_row_media.html.twig</argument>
                <argument key="outer_list_rows_mosaic">@SonataMedia/MediaAdmin/list_outer_rows_mosaic.html.twig</argument>
                <argument key="base_list_field">@SonataAdmin/CRUD/base_list_flat_field.html.twig</argument>
                <argument key="list">@SonataMedia/MediaAdmin/list.html.twig</argument>
                <argument key="edit">@SonataMedia/MediaAdmin/edit.html.twig</argument>
            </argument>
        </call>
    </service>

... into this yaml: ...进入这个yaml:

sonata.media.admin.media:
    class: App\Application\Sonata\MediaBundle\Admin\ORM\MediaAdmin
    arguments:
        - ''
        - '%sonata.media.admin.media.entity%'
        - '%sonata.media.admin.media.controller%'
        - '@sonata.media.pool'
        - '@sonata.media.manager.category'
    tags:
        - { name: sonata.admin, manager_type: orm, group: admin, label: Seiten }
    public: true
    calls:
        - [ setModelManager, ["@sonata.media.admin.media.manager"] ]
        - [ setTranslationDomain, ["%sonata.media.admin.media.translation_domain%"] ]
        - [ setTemplates, [ inner_list_row : "@SonataMedia/MediaAdmin/inner_row_media.html.twig", outer_list_rows_mosaic : "@SonataMedia/MediaAdmin/list_outer_rows_mosaic.html.twig", base_list_field : "@SonataAdmin/CRUD/base_list_flat_field.html.twig", list : "@SonataMedia/MediaAdmin/list.html.twig", edit : "@SonataMedia/MediaAdmin/edit.html.twig" ] ]

The yaml parses just fine when I try running a cache warmup.当我尝试运行缓存预热时,yaml 解析得很好。 The problem, however, is that I now get this error message:但是,问题是我现在收到此错误消息:

The service "sonata.media.admin.media.template_registry" has a dependency on a non-existent service "SonataMedia/MediaAdmin/inner_row_media.html.twig".服务“sonata.media.admin.media.template_registry”依赖于不存在的服务“SonataMedia/MediaAdmin/inner_row_media.html.twig”。

This seems strange to me, since the version of the admin service definition in the vendor folder (which was working fine before I overrode it) also has this same dependency.这对我来说似乎很奇怪,因为供应商文件夹中的管理服务定义版本(在我覆盖它之前工作正常)也具有相同的依赖性。 Any ideas about what's going wrong, and what I can do to fix it?关于出了什么问题的任何想法,以及我可以做些什么来解决它?

The @ sign in a definition typically tells the compiler to look for a service with that name.定义中的@符号通常会告诉编译器查找具有该名称的服务 If you are using it as a template namespace you will probably have to escape the symbol.如果您将它用作模板命名空间,则可能必须对符号进行转义 Try this:试试这个:

    <call method="setTemplates">
        <argument type="collection">
            <argument key="inner_list_row">@@SonataMedia/MediaAdmin/inner_row_media.html.twig</argument>
            <argument key="outer_list_rows_mosaic">@@SonataMedia/MediaAdmin/list_outer_rows_mosaic.html.twig</argument>
            <argument key="base_list_field">@@SonataAdmin/CRUD/base_list_flat_field.html.twig</argument>
            <argument key="list">@@SonataMedia/MediaAdmin/list.html.twig</argument>
            <argument key="edit">@@SonataMedia/MediaAdmin/edit.html.twig</argument>
        </argument>
    </call>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 服务“ twig”依赖于不存在的服务“ security.context” - The service “twig” has a dependency on a non-existent service “security.context” 您请求了一个不存在的服务“twig”错误 - You have requested a non-existent service "twig" ERROR 服务“ security.context_listener.0”依赖于不存在的服务“ fos_user.user_manager” - The service “security.context_listener.0” has a dependency on a non-existent service “fos_user.user_manager” 服务“sonata.block.service.container”依赖于不存在的服务“模板化” - The service “sonata.block.service.container” has a dependency on a non-existent service “templating” 服务“ form.type.users”依赖于不存在的服务“ security.context” - The service “form.type.users” has a dependency on a non-existent service “security.context” Symfony2错误:服务“模板”依赖于不存在的服务“ templating.globals” - Symfony2 error: The service “templating” has a dependency on a non-existent service “templating.globals” 服务“App\Decorator\DomainHydraDecorator”依赖于一个不存在的服务“api_platform.hydra.normalizer.error” - The service "App\Decorator\DomainHydraDecorator" has a dependency on a non-existent service "api_platform.hydra.normalizer.error" Symfony:服务...依赖于不存在的参数kernel.secret - Symfony: The service … has a dependency on a non-existent parameter kernel.secret Symfony 2称不存在的服务“路由器” - Symfony 2 calling non-existent service “router” 在不存在的行上使用提取 - Using Fetch on a Non-Existent Row
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM