RailsのActionController :: Parametersから値を追加/削除する最も良い方法は何ですか? 例えば:ActionController :: Parametersに値を追加/削除する方法
[96] pry(main)> params = ActionController::Parameters.new({controller: "home", action: 'index', prop1: "val"})
=> <ActionController::Parameters {"controller"=>"home", "action"=>"index", "prop1"=>"val"} permitted: false>
[97] pry(main)> my_params = params.permit(:prop1)
=> <ActionController::Parameters {"prop1"=>"val"} permitted: true>
[98] pry(main)> my_params.merge(prop1: "val2")
=> <ActionController::Parameters {"prop1"=>"val2"} permitted: true>
私はこのような動作を必要とする:
# add
pry(main)> my_params
=> <ActionController::Parameters {"prop1"=>"val1"} permitted: true>
pry(main)> my_params.awesome_add(prop1: "val2")
<ActionController::Parameters {"prop1"=>["val1", "val2"]} permitted: true>
# remove
pry(main)> my_params.awesome_remove(prop1: "val1")
=> <ActionController::Parameters {"prop1"=>"val2"} permitted: true>
あなたが探しているすばらしい方法は意味をなさないものです。あなたは実際のアプリケーションで何を達成しようとしていますか?他の場所で問題を修正する可能性があります。 –
OK、ビュー内の各スコープのクエリ文字列でパスを生成する方法(filter.erb.html)以前のパラメータを削除せずにgem has_scopeを使用しましたか? – user3430722