2017-01-25 6 views
0

Symfony를 처음 사용하고 방금 설치 했으므로 기본값 인 AppBundle을 제거하고 자체 생성했습니다. 이제 사이트의 일부 실제 데이터를 집계하는 응용 프로그램을 만들려고합니다. 즉symfony 컨트롤러에서 번들의 다른 기능을 그룹화하는 방법

임대 가능한 아파트를 가져와 표시합니다.

내가 가진 문제는 기술적이지는 않지만 전략적인 문제입니다.

나는 내 애플 리케이션의 다양한 작업을 나누는 방법을 잘 모르겠다.

/       DefaultController::indexAction() 
/about      DefaultController::aboutAction() 
/contact     DefaultController::contactAction() 

/login      UserController::loginAction() 
/register     UserController::registerAction() 

/subscribe     UserController::subscribeAction() 

/search?q=..    SearchController::searchAction() 

/announce/add    AnnounceController::addAction() 
/announce/{id}/{slug}  AnnounceController::showAction() 
/announce/{id}/{slug}/edit AnnounceController::editAction() 

그래서,이 :

내가이 지금부터

/       # index page 
/about      
/contact 
/login 
/register 
/subscribe     # subscribe to a newsletter 
/search?q=..    # display search result 
/announce/add    # add new apartment for rent 
/announce/{id}/{slug}  # unique url for each anounce 
/announce/{id}/{slug}/edit # edit announce if submitted by user 

염두에 해당 URL을 가지고, 당신에게 통찰력을 제공하기 위해, 나는 같은 컨트롤러에 경로를 매핑해야 어쩌면 생각하고 나는 그 순간에 내가 생각할 수있는 모든 것입니다.

+0

하지만 당신이 우리에게 무엇을 요구 하는가? 컨트롤러 4 개 또는 5 개를 사용해야하는지 알려주시겠습니까? – goto

+0

라우터의 구조에 대한 내 생각에 결함이 있는지 알고 싶습니다 ~> 컨트롤러 매핑 –

+0

당신에게 아무것도 보이지 않거나 피해야한다고 느낀다면 –

답변

1

우선, 심포니의 좋은 징조를 알고 있어야합니다. AppBundle을 고유 번들로 사용하는 것이 좋습니다. 사용하려는 컨트롤러의 선택은 기술적 인 관점에서 그리 중요하지 않습니다. 그것은 쉽게

당신이있어 좋은 pratices을 많이 찾을 수 있습니다 컨트롤러 액션을 찾기 위해 응집성해야합니다 http://symfony.com/doc/current/best_practices/index.html

좋아
+0

이제 질문에 대답하지 않습니까? AppBundle을 제거하고 고유 한 네임 스페이스를 사용하여 새 패키지를 만들었습니다. AppBundle은 고유하지 않으며 단지 기본 번들입니다. 또한 '우수 사례'페이지를 보았지만 제 질문에 대한 답변이 없습니다. –

+0

AppBundle을 사용하는 고유 번들의 이름으로 사용하는 것이 좋습니다. 질문이 명확하지 않습니다. 네가 그 대답을 갖고있는 것 같아. 컨트롤러간에 액션을 나누는 방법은 논리적 인 것으로 보입니다. – actarus

관련 문제