:레일 3.1 부분 부분 렌더링의 새로운 기능은 항상이 코드 예를 들어에 걷어하지 않는 이유를 확실히 이해하지 않는 대체
= render(:partial => "pages/#{foo}/data")
는이 부분 pages/_data.html.erb
경우에 폴백하지 않습니다. pages/test/_data.html.erb
존재하지 않습니다. 이 문제를 어떻게 해결할 수 있습니까? 당신이 할 수있는
:레일 3.1 부분 부분 렌더링의 새로운 기능은 항상이 코드 예를 들어에 걷어하지 않는 이유를 확실히 이해하지 않는 대체
= render(:partial => "pages/#{foo}/data")
는이 부분 pages/_data.html.erb
경우에 폴백하지 않습니다. pages/test/_data.html.erb
존재하지 않습니다. 이 문제를 어떻게 해결할 수 있습니까? 당신이 할 수있는
뭔가입니다 : 당신이 부분에 전달하는 몇 가지 변수를 가질 특히
= render(:partial => "pages/#{foo}/data") rescue render(:partial => "pages/data")
그러나 누군가가 더 나은 솔루션이 있다면 내가 관심을 가질만한,이 사람은 우아한되지 않습니다. 적어도 도우미가 처리하는 것이 더 나을 수 있습니다.
부분적인 것을 이해하는 것은 작고 독립된 HTML 덩어리가 아니라보다 일관된 방식으로 코드를 구성하는 데 사용할 수있는 추상화 조각입니다.
필자가 볼 수 있듯이 파일이 복잡해지지 않도록 하나 이상의 장소에서 사용되도록 부분이 만들어지며 단순히 자체적으로 렌더링되는 데 사용되지 않습니다. 그러나 나는 실수 할 수있다.
저를 위해 일했습니다 - 다른 예외가 부풀어 오르는 것을 확인하기 위해 [구조에 대해 명시 적으로] (https://gist.github.com/reagent/6690353) 더했습니다. –
여기서 문제는'''페이지/# {foo}/data "''의 렌더링이 약간의 예외를 던지면, 그것은 또한 여러분이 원하는 것이 아닌 (또한 예외를 삼키는) 다시 쓰러진다는 것입니다. –