如何向奏鸣曲管理菜单添加自定义按钮/链接/锚点

时间:2017-02-02 14:33:10

标签: symfony sonata-admin

首先要说我是奏鸣曲的新人。在文档中搜索,发现类似的问题,但不完全相同。 我添加了自定义管理员没有绑定到任何实体并添加了自定义操作:

namespace Opcja\AdminBundle\Admin;


class PriceProductAdmin extends AbstractAdmin
{
protected $baseRouteName = 'product_price';
protected $baseRoutePattern = 'product_price';


protected function configureRoutes(RouteCollection $collection)
{
    $collection->add('management');
}

}

namespace Opcja\AdminBundle\Controller;

class PriceProductAdminController extends CRUDController
{
   public function managementAction()
   {
  //    return parent::listAction(); // TODO: Change the autogenerated stub
    return new Response("aa");
   }
}

在文档中注册:

        admin.price_product_admin:
        class: AdminBundle\Admin\PriceProductAdmin
        arguments: [~, ~, OpcjaAdminBundle:PriceProductAdmin]
        tags:
            - { name: sonata.admin, manager_type: orm, group: Products Price Management, label: Product Price }

直到这里一切正常,管理员工作,当我使用' / management'路线我看到控制器的响应。但是在BlockMenu中(左侧"向下滑动")我可以组合我给的(产品......),当我点击这个组时我看到产品价格但是链接进入" /列表" (我假设它的默认值),我希望此链接指向我的自定义操作" / management"正如我所定义的那样。

我查了一下: 1. https://sonata-project.org/bundles/admin/master/doc/cookbook/recipe_custom_action.html 2. https://sonata-project.org/bundles/block/master/doc/reference/your_first_block.html 我很困惑 - 我只想在块菜单中指向我的自定义操作(管理)而不是" list"。我应该添加新的块吗?创建新目录和按钮(链接1,点8.1.4 - 试过这个,它对我不起作用)?

1 个答案:

答案 0 :(得分:0)

尝试向configureRoutes方法添加第二个参数。也许有帮助。

$collection->add('management', '/management');