5

Rails 3アプリにルートを追加するには、複数のパラメーターを受け入れるRESTfulリソースのアクションにマップするURLを設定できます。

/modelname/compare/1234,2938,40395

そして、私のコントローラーで、これらのIDにアクセスしたいと思います。

@modelname = Modelname.find(params[:modelname_ids])

これまでマッチ'/modelname/compare/:modelname_ids', :to => 'modelname#compare'を試してきましたが、どんどん増えていきNo route matches "/modelname/compare/4df632fd35be357701000005,4df632fd35be357701000005"ます。助言がありますか?

4

1 に答える 1

8

何にでも一致するルートをセットアップしてから、コントローラー内でパラメーターを分割できます。

resources :modelname do
  match 'compare/*path' => 'controller#compare_action'
end

# controller:
def compare_action
  @modelname = Modelname.find(params[:path].split(','))
end
于 2011-06-20T14:56:58.430 に答える