プログラミングとかときどきビジネスとかとかアジアとか

自分のための技術的なメモがメインです。RailsとかJavascriptとかサーバ周りとか。マークダウンとかわかりません。

URL取得関連

たまにURLにパラメータじゃなくて#がついてるときあるじゃないですか。

http://hoge.com/#fuga=fuu

みたいなあれ。

あれをRubyで取得しようといろいろ試しました。

方法1

url_for()を使う

url_for()は現在のurlを返す関数ですが、引数無しだとパラメータも何も取ってきてくれない。

なのでパラメータが欲しいときは、 url_for(params) とする。

しかし!アンカーは取れず。

方法2

requestを使う

request.url とかrequest.path_infoとかいろいろありますが、 結局これでもアンカーは取れず。

なんでやねんと悩んだ結果、アンカーはサーバに送られてないらしい。 知らなかった、、、、

というわけでJSで取るしかないみたいです。 location.hash こんな便利メソッドでサクっと取りつつsplit('=')とかでほげほげしましょう。

そんじゃーね