我正在嘗試編寫一個接受複數資源名稱並返回相應鏈接的幫助程序方法。該方法的本質是:使用Rails動態構建RESTful路線
def get_link(resource)
link_to "#{resource.capitalize}", resource_path
end
—顯然resource_path
部件沒有任何作用。我想要的是能夠通過foos
得到foos_path
和bars
得到bars_path
等。我該怎麼做?我無法完成語法。
我正在嘗試編寫一個接受複數資源名稱並返回相應鏈接的幫助程序方法。該方法的本質是:使用Rails動態構建RESTful路線
def get_link(resource)
link_to "#{resource.capitalize}", resource_path
end
—顯然resource_path
部件沒有任何作用。我想要的是能夠通過foos
得到foos_path
和bars
得到bars_path
等。我該怎麼做?我無法完成語法。
def get_link(resource)
link_to "#{resource.capitalize}", send("#{resource}_path")
end
def get_link(resource) link_to(resource.to_s.titleize, send("#{resource}_path")) end
的to_s資源調用是支持通過符號資源。 所以
get_link("foos")
會工作,也
get_link(:foos)
如果你想建立一個成員一個RESTful路線:
send("edit_#{resource}_path".to_sym, @resource)
感謝,工程巨大。出於興趣,此時發送消息的接收者是什麼? – 2009-04-13 17:22:21