在Sonata菜单中添加自定义控制器条目

时间:2016-09-14 09:42:15

标签: symfony sonata-admin symfony-sonata sonata

我试图在Sonata的官方网站上关注this section,为我的菜单添加自定义控制器。

我拥有的是一个工作控制器;

tableView.reloadData()

我已将控制器注册为services.yml文件中的服务;

Dispatch.main.async { self.tableView.reloadData() }

最后我将控制器路线作为项目添加到菜单中;

class HelloController extends Controller {

    /**
     * 
     * @Template()
     * @param type $name
     * @return type
     */
    public function indexAction($name)
    {
        $admin_pool = $this->get('sonata.admin.pool');

        return array(
            'admin_pool' => $admin_pool,
            'name' => $name
        );
    }
}

但现在我收到了错误;

  

在渲染模板期间抛出了异常   ("管理服务" app.hello_controller"在管理池中找不到。")in   SonataAdminBundle:核心:第5行的add_block.html.twig。

有人可以告诉我我错过了什么,以这种方式添加菜单项吗?

1 个答案:

答案 0 :(得分:2)

您需要修复配置。在您的示例中,您要将一个服务ID为app.hello_controller的管理服务添加到菜单中。

您需要做的是添加以下配置以从控制器添加一个特定路线/操作

<强> config.yml

sonata_admin:
    dashboard:
        groups:
            Monitoring:
                items:
                    - route:     your_route_name
                      label:     Your Menu Item Label
相关问题