내부 디렉터리의 컨트롤러를 사용하여 Symfony 6에서 명명된 라우팅
P粉511749537
P粉511749537 2024-03-26 16:27:48
0
1
443

아래 그림과 같이 Symfony 6 프로젝트의 모든 컨트롤러를 /src/Web/Controller로 옮겼습니다

으아악

routes.yaml수정됨

으아악

이제 문제는 내 모든 경로의 이름에 app_web라는 접두사가 붙는다는 것입니다. 이런 구조 때문인 것 같아요.

$ php bin/console debug:router 명령 출력은 다음과 같습니다.

으아악

여기서는 이름만 사용하고 싶습니다. post_index 이 접두사를 제거하는 방법은 무엇입니까?

P粉511749537
P粉511749537

모든 응답(1)
P粉011684326

경로 이름을 명시적으로 지정하지 않으면 경로 이름이 자동으로 지정됩니다.

이름은 컨트롤러 클래스 및 메서드의 정규화된 이름을 사용하여 생성됩니다(어떤 이유로 네임스페이스의 마지막 부분은 없지만 - controller).

자동 생성된 이름을 사용하지 않으려면 경로 이름을 직접 지정하세요.

으아악

내장 옵션을 사용하여 경로 집합에 접두어 를 추가할 수 있지만 자동으로 생성된 이름에서는 이를 제거하지 마세요.

이것이 "자동으로" 발생하는 사용 사례에 정말 중요하다면

자신만의 루트 로더를 구축할 수도 있지만, 하지만 그건 좀 과잉이라고 말하고 싶습니다. 경로 이름을 적절하게 지정하거나 자동으로 생성된 이름을 사용하세요.


경로 이름을 명시적으로 지정하는 것이 일반적으로 더 나은 아이디어/연습입니다. 왜냐하면 다른 곳에서 경로 이름을 참조하면 컨트롤러를 다른 코드 구조로 리팩터링하도록 선택하더라도 이름이 동일하게 유지되기 때문입니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!