2013-07-19 19 views
0

有沒有辦法指定can.Model的基礎URL?爲can.Model指定基本服務器URL的選項?

我看到服務器路徑被硬編碼是這樣的:

Wine = can.Model({ 
    findAll : 'GET //localhost/Cellar-CanJS-Bootstrapped/api/wines', 
    findOne : 'GET //localhost/Cellar-CanJS-Bootstrapped/api/wines/{id}', 
    create : 'POST //localhost/Cellar-CanJS-Bootstrapped/api/wines', 
    update : 'PUT //localhost/Cellar-CanJS-Bootstrapped/api/wines/{id}', 
    destroy : 'DELETE //localhost/Cellar-CanJS-Bootstrapped/api/wines/{id}' 
},{ 
}) 

我正在尋找一種方法指定基本URL模式,使我可以繼續我的配置是can.Model標準的方式。

回答

2

不幸的是,設置模型庫網址並不是內置功能,而是計劃在下一個次要版本中使用。這就是我通常做的時刻:

function getUrl(url, method) { 
    method = method || 'GET'; 
    return method + ' ' + BASE_URL + '/' + url; 
} 

Wine = can.Model({ 
    findAll : getUrl('api/wines'); 
    findOne : getUrl('api/wines/{id}'), 
    create : getUrl('api/wines', 'POST'), 
    update : getUrl('wines/{id}', 'PUT'), 
    destroy : getUrl('api/wines/{id}', 'DELETE') 
},{ 
}); 

getUrl可以是靜態的模型法或位於更好的位置(例如應用自舉)爲好。

+0

感謝DAFF - 這就是我如何在目前這樣做了。 :-) –

相關問題