RailsでGETパラメータを取り扱う

今回は、RailsでGETパラメータを扱ってみました。
POSTメソッドのときはストロングパラメータであったり使うにあたっての確認することがあったのですが、GETリクエストではパラメータを扱ったことがありませんでした。
POSTパラメータと扱い方は大差なくできました。


GETパラメータ取得

パラメータの取得はPOSTのときと同様にparamsを使うことができる。
indexアクションの中で、もしパラメータxを取得する場合は、以下のようになる。

PagesControllerのindexアクション
1
2
3
4
5
6
7
8
def index
@pages = Page.all

x=params[:x]

# パラメータxに関する何かを処理する

end

GETパラメータを使ってみる

パラメータに適切な値がなかったときには、rootのページにリダイレクトさせてみます。
パラメータxが12345ではなかった時には、リダイレクトさせます。

PagesControllerのindexアクション
1
2
3
4
5
6
7
def index
@pages = Page.all

if params[:x] != '12345'
redirect_to root_path
end
end

ブラウザを立ち上げて、localhost:3000/pagesにアクセスすると、localhost:3000にリダイレクトされてしまいます。
GETパラメータをつけてlocalhost:3000/pages?x=12345とすることで、localhost:3000/pagesの内容が表示されます。

ではでは。