初歩的なことで恐れ入ります。
ビューからパラメータ(日付のFromとTo)を受け取り、両方とも空だった場合は
初期値として現在日をセットして表示したいです。
そこでまずパラメータが空かどうかのチェックを行いました。
下記のようにすると、検索から来た場合は
params[:q]の中に、
日付のFromである[:imp_date_gteq]、
日付のToである[:imp_date_lteq]
がそれぞれ存在しているので初期値をセット出来ますが、
そもそも画面の初期表示時に
まだ
params[:q]がnil のため
エラーになるようです。
ruby
1 # 一覧 2 def index 3 4 if params[:q].present? 5 if params[:q][:imp_date_gteq].present? != true && params[:q][:imp_date_lteq].present? != true 6 params[:q][:imp_date_gteq] = Date.today 7 params[:q][:imp_date_lteq] = Date.today 8 end 9 else 10 #ここでエラー↓ 11 params[:q][:imp_date_gteq] = Date.today 12 params[:q][:imp_date_lteq] = Date.today 13 end 14end
このような要件の場合、初期値をセットする方法があるでしょうか?
何か方法があれば教えて下さい。
宜しくお願い致します。
回答3件
あなたの回答
tips
プレビュー