2013-02-19 3 views
0

{% "번들 액션 : 컨트롤러"렌더링 %}를 사용하여 해당가 반환404 오류

throw $this->createNotFoundException('Error - 404'); 

이 성공적으로 개발 모드에서 오류 페이지가 발생하지만, 생산 모드에서 {% render %} 부분을 제외한 페이지 렌더링이 이제는 비어 있습니다.

부모 작업에서 예외가 throw 된 것처럼 페이지 전체에 404 페이지를 표시하고 싶습니다.

누구에게 의견이 있습니까?

감사

답변

0

오류없이 다시 오류를 가져 오려면 with 개체 뒤에 ignore_errors 옵션을 추가하기 만하면됩니다.

{% render 'Bundle:Controller:Action' with { }, { 'ignore_errors' : false } %} 
1

이 성공적으로 개발 모드에서 오류 페이지가 발생하지만, 생산 모드에서 페이지가 제외 렌더링 그냥 비어 지금의 {%는 % 렌더링}.

이것은 합법적 인 것처럼 보입니다. 사용하는 경우

{% render "Bundle:Controller:Action" %} 

웹 페이지의 일부만 렌더링 할 수 있습니다. 메뉴. 특정 렌더링 액션이 404를 던지면 웹 사이트의이 부분에만 영향을 미치지 만 전체 페이지에는 영향을 미치지 않습니다.


게다가 이유 분명 잘 표현하는 전체 페이지는, 그 효과는 페이지의 일부만 404 에러 페이지에 의해 차단되어야 하는가? 이것은 좋은 습관이 아닙니다. 오류가 매우 중요하면 컨트롤러 수준에서 더 높은 인스턴스에서 트리거해야합니다.

+0

나는 전체 페이지에 404를 던지고 싶습니다. –

+1

404 뷰 레이어에 오류가 발생해서는 안됩니다. 그것들은 Controller 레이어에서만 던져 져야합니다. 당신은 달성하고자하는 일을하는 당신의 디자인을 재고해야 할 것입니다. – Benny

+0

@Benny 당신이 맞습니다. –