2016-09-14 4 views
0

내 메뉴에 사용자 지정 컨트롤러를 추가하려면 Sonata의 공식 웹 사이트에 this section을 따르려고합니다.소나타 메뉴에 사용자 지정 컨트롤러 항목 추가

내가 가지고있는 것은 작동하는 컨트롤러입니다.

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 
     ); 
    } 
} 

컨트롤러를 services.yml 파일에 서비스로 등록했습니다.

app.hello_controller: 
    class: AppBundle\Controller\HelloController 

마지막으로 컨트롤러 경로를 메뉴 항목으로 추가했습니다.

sonata_admin: 
    dashboard: 
     groups: 
      Monitoring: 
       items: 
        - app.hello_controller 

하지만 이제 오류가 발생합니다.

예외

템플릿 의 렌더링시 발생 된 ("관리 서비스"app.hello_controller "관리자 풀에서 찾을 수 없습니다.") SonataAdminBundle에 : 코어 : 5 호선에서 add_block.html.twig.

누락 된 점을 누군가에게 알려 주시면이 방법으로 메뉴 항목을 추가 할 수 있습니까?

답변

2

설정을 수정해야합니다. 예를 들어, 서비스 ID가 app.hello_controller 인 관리 서비스를 메뉴에 추가합니다.

당신은 컨트롤러에서 하나의 특정 경로/액션를 추가 할 수있는 다음과 같은 설정 추가하기 만하면 무엇 :

config.yml을

sonata_admin: 
    dashboard: 
     groups: 
      Monitoring: 
       items: 
        - route:  your_route_name 
         label:  Your Menu Item Label 
관련 문제