ユーザー入力をクエリに変換するためのapplication_controllerのコードを書くと、これは機能します。
result_set = model # some implementation of ActiveRecord::Base as a Class
.includes(:metric_template => [:group]) #still need to abstract this
.where(f)
.order(sort_string)
.limit(rows)
.offset((page-1)*rows)
whereメソッドが呼び出されていないように見えるため、これは機能しません。
result_set = model
.includes(:metric_template => [:group]) #still need to abstact this
.tap{|o| o.where(f) if f}
.order(sort_string)
.limit(rows)
.offset((page-1)*rows)
ここで.tap()を機能させたいのですが。なんでそうじゃないの?クラスメソッドとして利用できませんか?納得できますか?
ガイダンスに感謝します。