0

私は Facebook のような共有アプリケーションを実行しています。ユーザーは自分の投稿で URL を共有できます。ユーザー投稿フォームがあり、/sharer?urlparams をコントローラーの共有アクションにルーティングしたい問題を URL パラメーターからフォームに入力します。次のようなURLのURLパラメーターを削除します

localhost:3000/sharer?params[:url]="http://stackoverflow.com/questions/ask"¶ms[:title]=""¶ms[:description]=""

NB更新これらの方法を見つけました

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

1 に答える 1

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 に従って、メンバー ルーティングの代わりにコレクションを使用できます。私の例ではURLパスでIDを取得しているため、メンバーを使用しました。そのため会員路線となります。

于 2013-10-08T04:15:25.180 に答える