2013-10-24 56 views
4

我有一個$資源,它定義了:all方法的自定義url。

angular.module('MyApp'). 
    factory('Object', ['$resource', ($resource) -> 
    $resource(
     '/api/groups/:group_id/objects/:id.json', 
     { 
     id: '@id', 
     group_id: '@group_id' 
     }, 
     all: { 
     method: 'GET', 
     url: '/api/objects/all.json' 
     } 
    ) 
    ]) 

當我的頁面加載時,請求會發送到'/api/objects/all.json?'。它正確加載,但存在?令我感到困惑。我沒有通過它的任何參數,所以爲什麼角添加?要求?

我能以某種方式擺脫它嗎?

回答

2

由於角度v.1.2.14此問題已得到解決。更新到它,並有一個明確的網址,沒有不必要的問題

+1

已確認修正於1.2.14。這是正確的答案。 – gspatel

1

您應該將您的頂級參數移動到期望id到get方法定義中的方法中。由於您的ID爲{@id},資源服務認爲您將在呼叫中添加一個ID和組ID。

+0

謝謝!這工作,但這讓我聲明每個默認的行動(獲取,保存,查詢等)分開。我也嘗試將params:{}納入我的all:action中,但沒有解決它。我能否以某種方式覆蓋默認參數? –