2013-12-20 53 views
2

我正在製作一個應用程序,用於檢索不在我控制範圍內的API數據。我有以下情況:燼數據適配器中的動態段

檢索帖子的路徑是/api/posts。所以我配置我的ApplicationAdapter如下:

App.ApplicationAdapter = DS.RESTAdapter.extend({ 
    namespace: 'api' 
}); 

檢索評論的網址是'/ api/posts/1/comments'。您可以看到,網址前綴爲檢索單個post後跟默認路徑/comments的路徑。

Ember數據默認爲/api/comments。但是我想爲我的Comment -model配置一個適配器,以便使用當前帖子的id替換正確的url:/api/posts/:post_id/comments,並將:post_id替換爲該模型的id。我怎麼做?

+0

你想,當你做'post.get做'剛剛/ API /職位/ 1/comments'( '意見')'但使用'store.find(當'comments')',url會是'/ api/c omments'? –

回答

2

修改您的文章JSON來包含的hasMany爲鏈接(可以這樣做客戶方),當它建立了網址,將預先準備的帖子的網址,讓您post/1/comments

App.Post = DS.Model.extend({ 
    comments: DS.hasMany('comment', {async:true}) 
}); 

{ 
    post:{ 
    id: 1, 
    links: { 
     comments: 'comments' 
    } 
    } 
} 

這裏有一個極小例如與colorsitems

http://emberjs.jsbin.com/OxIDiVU/68/edit

+0

你知道是否有可能將參數傳遞給鏈接的URL?像這樣:'post.get('comment',{from:'2014-01-01',to:'2014-01-10'});'應該導致url'/ api/posts/1/comments?從2014年1月1日=&到= 2014-01-10' –