バグ #99 ロードマップの件数をクリック後に検索条件が適用されていない

比較的やっかいな修正。
チケットの一覧ページへ絞り込み条件がクエリストリングで与えられるとうまく動いていなかった。問題は2つ。まず1つがクエリストリング付きのURL生成の方法が間違っていること。routesの設定をカスタマイズしていることもあり、パスパラメータとクエリストリングをきちんと分ける必要がある。routesが何も設定されていなかった頃は動いていたのかもしれないが。クエリストリングに渡したいパラメータは?の下にハッシュでぶら下げればよい。[diff]

2つめの問題はクエリストリングを解釈してくれる処理が存在していない事による。フォームで送信された場合は受け取れるのだが、フォームの場合は比較を「等しい」「等しくない」のように選べるがクエリストリングの場合は取り扱いが異なる。なのでそのまま代入するわけにもいかず分岐を作った。これはもうすこしスマートにマージできる気もする。[diff]
またこれだけでは適用できるフィルターのリストに「バージョン」が表示されないので、Queryモデルのフィルタ一覧を取得する処理内を他のフィルタを見習って設定する。おそらくakiyanが書いた処理なのだが空気を読んで書くだけで動いた。助かる。

これでロードマップから貼られているリンクをクリックした際に絞り込みが動くようになった。解決。