2016-12-10 1 views
1

안녕하세요. 라우팅에 문제가 있습니다.Symfony3 라우팅 컨트롤러

저는 사용자 및 관리자 용 컨트롤러로 가득 찬 Appbundle을 사용하고 있습니다. 모든 컨트롤러를 다른 번들로 분리하고 싶지 않습니다.

그래서 내 AppBundle에 다른 하위 디렉토리를 만들 계획이었습니다. 내 routing.yml에서

src/AppBundle/Controller/Admin/Admincontroller 

src/AppBundle/Controller/User/UserController 

는이 같은 링크 (또한 시도 다른 옵션)

test: 
path: /test 
defaults: { _controller: AppBundle:Admin/TestController:test } 

을 생성하지만 난 여전히 라우팅 문제

내 컨트롤러는 또한 경로를 만드는 무엇입니까 불가능합니다.

내 공간이

namespace AppBundle\Admin\Controller;  

그래서 난 내 라우팅에 어떤 문제가 있는지 정말 모르겠습니다처럼 보이는, 그리고 왜 내 컨트롤러는 심포니에 의해 인식되지 않습니다.

test: 
    path: /test 
    defaults: { _controller: AppBundle:Admin/Test:test } 

: 일반 디렉토리에서 모든 것이 Bundle:Controller:action 형식을 사용하는 경우 Controller 접미사는 사용할 수 없습니다

CRITICAL - Uncaught PHP Exception Symfony\Component\Config\Exception\FileLoaderLoadException: "Class AppBundle\Admin\Controller\TestController does not exist in C:\Users\ylamb\Documents\dev\db-yl\src\AppBundle/Controller/ (which is being imported from "C:\Users\ylamb\Documents\dev\db-yl\app/config\routing.yml")." at C:\Users\ylamb\Documents\dev\db-yl\vendor\symfony\symfony\src\Symfony\Component\Config\Loader\FileLoader.php line 118 
+0

무엇'AppBundle \ cursussen : Admin : cursus'가 있어야합니까? – Federkun

+0

AppBundle : Admin/Admincontroller : cursus가 트릭을해야합니다. 그렇지 않은 경우 질문을 오류 메시지로 업데이트하십시오. 아니면 질문이 잘못되었을 수도 있습니다. AppBundle/Admin/Controller/SomeControler.php가 있습니까? – Cerad

+0

더 많은 정보를 가지고 원래 게시물을 편집했습니다. –

답변

0

일반 상점

enter image description here

내 오류 메시지를 작동 Fyi, 당신은 또한 no를 사용할 수 있습니다. 라우팅에서 FQCN::method 구문을 사용하십시오.

namespace AppBundle\Admin\Controller; 

그것은 경로 아래에 배치됩니다 : 당신은 당신의 컨트롤러 잘못된 네임 스페이스를

test: 
    path: /test 
    defaults: { _controller: AppBundle\Controller\Admin\TestController::testAction } 
0

이이 같은 "마법"혼란 상황을 피할 것

AppBundle\Controller\Admin\TestController.php 

그래서해야

namespace AppBundle\Controller\Admin; 

또는 네임 스페이스를 그대로 두지 만 디렉토리를 다른 방법으로 구성하십시오.