2009-10-04 50 views
1

當您在一個模型做map.resources,它產生一束路由助手:路由:resource_path或resource_url?

resource_path(@resource) 
resource_url(@resource) 
new_resource_url 
etc. 

有什麼用_path和_url之間的區別?從我試過的東西看來,這似乎沒有什麼區別。

回答

4

foo_url包括域和協議。 foo_path只輸出相對路徑。

>> foo_url(:id => 1) 
http://localhost:3000/foo/1 

>> foo_path(:id => 1) 
/foo/1 

大多數時候,你想要「_path」,但你有選擇。

+2

這其實只是個人偏好。一個例外是,如果您正在構建RSS提要或需要完整url的內容,那麼您應該使用resource_url() – 2009-10-05 00:14:05

+1

這就是@jdl在「大多數時間」所說的原因。 – 2010-11-04 20:06:11