"를 중첩 할 수 없습니다 노선 있지만 중첩 할 수 자원"경로
그러나 합리적인 것 같다 내가 할 노력하고있어, 그래서 어딘가에 대한 지원이 있다고 가정하고 있습니다.
는여기서의 목표는이 같은 구조를 가지고있다 : 나는 모두 참조, 사용자가 관리 할 수있는 것들에 대한 하위있는 "관리"섹션이하고 싶은, 즉
this.resource('project', { path: '/project/:project_id' }, function(){
this.route('manage', function(){
this.route('settings');
this.route('team');
this.route('notifications');
/* etc */
});
});
을 내 "프로젝트"인스턴스.
this.resource('project', { path: '/project/:project_id' }, function(){
this.route('manage.settings',{path : '/manage/settings'});
this.route('manage.team',{path : '/manage/team'});
/*etc*/
});
을하지만 경우이 오류가 발생하는 것입니다 :
나는이 작업을 수행 할 수있다 (
- 내가 자원 하위 섹션 사이의 탐색을 공유 할 수 없습니다 즉 인구의 콘센트와 관리 템플릿을 서브 경로로)
- 내 settings.hbs는 상위 리소스에 액세스하지 않습니다 (라우터 구성의 "모델"또는 "setupController"후크 내에서 고정되어 있다고 확신합니다./how)
어떤 도움이 필요합니까?
리소스를 사용하는 것이 맞다고 생각하지만 참조하는 동일한 페이지에서이 줄을 사용하지 마십시오. "참고 : 명사를 나타내는 URL에 this.resource를 사용해야하며 그 명사를 수정하는 형용사 또는 동사를 나타내는 URL에 대한 this.route. " 아마도 솔루션은 "관리"라는 경로를 사용하고 "설정"(명사) "팀"(명사) 등을 말합니다. 그래도이 작업을 수행하려면 각 모델 그 (나쁜 것은 아니지만),하지만 그 모델이 서버에서 어떻게 채워지고 부모 자원과 관련되는지 혼란스러워합니다. – gcoladarci
나는 그것을 리소스 = - 일과 루트 = 뭔가 - 할 - 것 - 것 같은 생각. 어느 쪽이든 문제는 분명히 '물건'이 아닌 '관리'라는 단어 인 것 같습니다. managedProject (물건)에는 설정, 팀 및 알림이 있습니다. 그렇다면'App.ManagedProjectSettings' 등이 있습니다. FWIW 네가 너무 많이 읽고있는 것 같아. 경로와 리소스는 모두 모델과 연관 될 수 있습니다.그리고 당신이 선택한 것은 아무리해도 모델이 서버로부터 채워지는 방식과 서로 관련이 없습니다. –
나는 이것에 대해 생각하는 올바른 방법이라고 생각한다. ManagedProject는 본질적으로 부모를위한 프록시 일 뿐이다. – gcoladarci