How do you pass params from one action to another you redirect_to?

I think traditionally, the two solutions to this problem are to

a.) Shove everything into the session hash and lug the params around.
b.) Create a hidden form input field for each value so that when the
form is submitted they get passed on again.

They both aren't great. Using the session means that your data could
bleed around and be present all over your application unless you ensure
it gets cleared out correctly on the next action. And creating form
input fields can get messy and brittle when the amount of params you
want to transfer is large.

Is there a c.) anyone can recommend? Actually, one simple solution
might be to do what you're doing above, but make it use POST somehow
instead of GET. Is there any way to do that?