2013-08-12 3 views
1

내 (현재 중첩) 자원의 구조에 문제가 있어요 :기본 중첩 리소스를 구조화하는 방법은 무엇입니까?

내 구조 : 게시물 -> 포스트 -> 댓글 -> 새

내 코드 지금까지 : http://jsbin.com/ewoqed/6/edit

게시물을 클릭 한 다음 View Comments을 클릭 한 다음 Add Comment을 클릭하면 이는 거의 내 원하는 효과입니다. 그러나 링크를 클릭하지 않아도 UI의 기본 동작이되고 싶습니다. 따라서 /posts/1/comments/new으로 가야하는 대신 /posts/1 일 뿐이며 모든 템플릿이 렌더링됩니다.

불필요하게 내 경로를 중첩한다는 느낌이 들지만 PostController로드시 추가 데이터 (설명 및 새 메모 레코드)를 첨부하는 방법을 모르겠습니다. 이것이 가능한가?

답변

4

경로를 중첩 할시기와 이유에 대해 a great post on the hashrocket blog이 있습니다.

기본적으로 템플릿을 중첩 할 때 경로를 중첩해야하며 템플릿을 렌더링하지 않으려면 경로를 중첩하지 않아야합니다.

+0

감사합니다. Alex입니다. 유용한 게시물입니다. 불행히도, 그는 모든 경로 (게시물 + 주석 + 덧글 추가 양식)를 동일한 경로에로드하는 것을 다루지 않습니다. – joecritch

3

OK, 당신이 원하는 당신이 달성 할 수있는 두 가지 방법이 있습니다 :

  1. 당신은 후크에 예를 들어, 리디렉션 할 수는 this.transitionTo가 ([childRoute])
  2. 당신은 부모 경로에 필요한 렌더링하는 {{render}} 도우미를 사용하고, 단지

난 당신이 옵션이 원하는 생각하는 부모 경로를 가질 수 있습니다 수행하여 afterModel 때문에 정말로 당신은 별도의 URL을 원하지 않는다. 당신이 그것을 볼 때 다른 일이 발생하는 게시물 url을 원한다. 그래서 {{render}}가 필요하다고 생각하는 이유입니다.

렌더 도우미 in the guides section of the website에 대한 자세한 소개가 있습니다.

관련 문제