2014-09-01 4 views
2

블로그 목록에서 블로그 세부 정보 페이지로 링크하려고하는데 링크가 작동하지 않습니다. 여기서 내가 뭘 잘못하고 있니? 링크의 this._id가 올바른 ID입니다. 이템플릿에서 meteor.js의 매개 변수를 전달하십시오.

this.route('blogdetail', { 
    path: '/groupsmain/:_id/blogs/:paramOne', 
    template:'groupdetail', 
    yieldTemplates: { 
     'blogdetail': {to: 'dynamiccontent'} 
    }, 
    controller: blogdetailController 
}); 

블로그 목록의 URL이

http://localhost:3000/groupsmain/NQxvBfeNQE875HDRR/blogs 

내 경로이며,이 블로그의 세부 사항에 대한 내 링크

<h3><a href="{{pathFor 'blogdetail' paramOne=this._id}}">{{this.title}}</a></h3> 

답변

2

pathFor가에서하지, 현재의 데이터 컨텍스트에서 매개 변수를 사용하다 인수에 전달합니다.

<a href="{{#with _id=_id paramOne=this._id}}{{pathFor 'blogDetail'}}{{/with}}"> 
0

명시 적으로 어떤 인수를 전달하지 않는 경우에만 pathFor 도우미가 컨텍스트를 사용처럼 보이는 현재 Iron Router's code (버전 0.9.1)에서 상대 : 그래서 당신은 #with 도우미와 컨텍스트를 변경해야 도우미 호출. 문서 예제는 두 경우를 혼합 할 수 있음을 보여주기 때문에 버그 일 수 있습니다.

따라서 pathFor 도우미에 두 매개 변수를 전달하거나 두 값을 모두 컨텍스트에 설정해야합니다. 도우미에만 paramOne을 전달하고 Iron Router가 _id 매개 변수를 다른 곳으로 가져올 것으로 예상합니다. 이 시도 : 실제로 부모 컨텍스트의 속성입니다

<a href="{{pathFor 'blogdetail' _id=whicheverIdYouNeedHere paramOne=_id}}">{{title}}</a> 

whicheverIdYouNeedHere 경우는 .. 키워드를 사용하여 얻을 수 있습니다. 다음과 같이 끝낼 것입니다 :

<a href="{{pathFor 'blogdetail' _id=../nameOfThePropertyFromTheParentContext paramOne=_id}}">{{title}}</a> 
관련 문제