Railsには以下のような => を使ったコードがよく出てきます。RailsはおろかRubyすらよく理解していないので何をやっているのか、わかりません。でも、どんな事をさせようとしているのかはコードに書いてあることから読み取れますが、どんな仕組みでコードが動くのかがさっぱりわかりません。
redirect_to :action => 'show', :id => product.id
調べるとメソッドを呼び出す際にパラメータとしてハッシュを渡しているということでした。上のコードでは redirect_to がメソッド部分で、それ以降がパラメータで渡すハッシュ部分になります。そしてこのコードのややこしいところが{}と()を省略しているからです。 本当の姿は以下のようになります。
redirecto_to( {:action => 'show', :id => product.id} )
:actionはなに?という方はこちら