查找指向特定目標(例如 MeController.login
)的第一個路由,並傳回包含其方法和 URL 的字典。
sails.getRouteFor(target);
參數 | 類型 | 詳細資訊 | |
---|---|---|---|
1 | target | 路由目標字串;例如 MeController.login |
類型
{
method: 'post',
url: '/auth/login'
}
在控制器動作中...
return res.view('pages/some-page-with-a-form-on-it', {
formEndpoint: sails.getRouteFor('SomeotherController.someAction'),
// ...
});
以便在呈現的視圖中...
<form action="<%=formEndpoint.url%>" method="<%=formEndpoint.method%>">
<!-- ... -->
</form>
- 此函數搜尋 Sails 應用程式明確設定的路由;
sails.config.routes
。由鉤子綁定的陰影路由(包括 藍圖路由)將不會被匹配。- 如果找不到匹配的目標,此函數會拋出
E_NOT_FOUND
錯誤(也就是說,如果您捕獲錯誤並檢查其code
屬性,它將是字串E_NOT_FOUND
)。- 如果有多個路由符合指定的目標,則會傳回第一個匹配項。
- 如果您只需要路由的 URL(例如,在您的視圖中用作
href
),您可能需要使用sails.getUrlFor()
而不是此函數。