簡體   English   中英

如何裝飾最終 class Sonata\PageBundle\Admin\BlockAdmin

[英]How to decorate final class Sonata\PageBundle\Admin\BlockAdmin

由於Sonata\PageBundle\Admin\BlockAdmin@final我不應該從它擴展。 UPGRADE-3x.md中,我可以看到我應該使用裝飾。

我試圖通過用App\Sonata\PageBundle\Admin\PageAdmin裝飾這個最終的 class 來實現這一點。

services.yaml配置:

parameters:
    sonata.page.admin.page.class: App\Sonata\PageBundle\Admin\PageAdmin

services:
    Sonata\PageBundle\Admin\PageAdmin:
        alias: sonata.page.admin.page

    App\Sonata\PageBundle\Admin\PageAdmin:
        decorates: Sonata\PageBundle\Admin\PageAdmin

Decorator App\Sonata\PageBundle\Admin\PageAdmin body looks like this (i just invoke all the methods from final class in my decorator): https://gist.github.com/AVAW/910604534684eedb228f71df1d7deb40

但我得到錯誤: 在此處輸入圖像描述

有沒有可能的方法來裝飾這個最終服務或者我做錯了什么?

我在用:

sonata-project/admin-bundle: 3.107.3
sonata-project/page-bundle: 3.26.0
symfony: 4.4.41

您是否嘗試刪除別名並直接使用“裝飾”中的奏鳴曲服務名稱? 像這樣:

services:
    App\Sonata\PageBundle\Admin\PageAdmin:
        decorates: 'sonata.page.admin.page'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM