2013-10-08 85 views
0

我正在做一個共享應用程序,如Facebook,在那裏用戶可以在他們的帖子上共享一個URL 我有一個用戶帖子表單,我從URL params填充表單 我想要路由/ sharer?urlparams到我的控制器上的共享器操作,而無需刪除url中的url參數 類似於路由欄URL包含多個參數

localhost:3000/sharer?params [:url] =「http://stackoverflow.com/questions/ask」 & params [:title] =「」& params [:description] =「」

NB更新 I foun d這些方法

match'/sharer/:url'=>"manys#sharer",:constraints => {:url => /.*/} 
+0

請澄清你的問題。你的問題到底是什麼? – depa

+0

我想要這些URL路由到我的帖子控制器上的共享者操作,而不改變路由後的網址 –

回答

0

如果url和控制器名稱不相等最好的方法是下面的方法。

match "/sharer/:id/share" => redirect{ |params, request| "/posts/#{params[:id]}/share?#{request.query_string}" } 

如果url名稱和動作名稱是相同的,你可以使用類似這樣的東西。

resources :sharer do 
member do 
    get :share 
end 
end 

根據您的網址,您可以使用集合而不是成員路由。我使用了成員,因爲我的示例在URL路徑中使用了id。因此它成爲會員路線。