Kendimi genellikle bunu yazarken buluyorum:
params.delete(:controller)
params.delete(:action)
params.delete(:other_key)
redirect_to my_path(params)
Silmenin izi doğru gelmiyor ve ikisi de:
[:controller, :action, :other_key].each do |k|
params.delete(k)
end
Daha basit ve daha temiz bir şey var mı?
Hash#except!
ama Hash#except
gitmek için yol (ile uğraşmak yok params
!). Genel bir kural olarak, kesinlikle gerekli olmadıkça yerinde herhangi bir nesneyle uğraşmayın, yan etkilerin beklenmedik sonuçları olabilir.