WEBRickのqueryをパターンマッチで取り出す
WEBRickではリクエストのクエリをreq.queryで取得できます。
WEBrick::HTTPRequest#query (Ruby 3.2 リファレンスマニュアル)
この戻り値はHashなので、例えばhogeを取得するのであればreq.query['hoge']のようにすれば値を取得できます。できますが、せっかくなのでパターンマッチで取得します。
req.query.transform_keys(&:to_sym): req.queryのHashのキーはStringなので、パターンマッチで取得するためにSymbolに変換します。req.query.transform_keys(&:to_sym) in :hoge: パターンマッチでhogeを取り出します。ローカル変数hogeにreq.query[“hoge”]の値が格納されます。
気がついたらパターンマッチのカッコは省略可能1になっていたので、変数1,2個取り出すくらいならガンガンに省略していきたいですね。
Footnotes
-
Ruby3.1からだったみたい。知らなかった。 ↩