フォームから日付を入力できるようにしたいと思っていましたが、なんだか大変そうなので後回しにしていました。
#フォームから日付を入力する。
調べてみたところ、htmlでは以下のように書けばカレンダー付きで日付を入力するフォームが、簡単に生成できます。
#html
<input type="date">
ということはrailsでも、当然このようなフォームの生成は想定されており、簡単に作ることができるはずです。
#date_select
探して見るとdate_select
というのがありました。
#new.html.erb
= date_select :date, Date.today, use_month_numbers: true
様々なoptionが用意されており、かなり細かい設定までできるようです。
このメソッドを使用すると簡単に日付入力ができてしまいます。
#params
このフォームから受け取ったパラメーターはparamsで以下のようになります。
date: <ActionController::Parameters {"2017-09-04(1i)"=>"2017", "2017-09-04(2i)"=>"9", "2017-09-04(3i)"=>"4"} permitted: false>
これどうやって扱うんだ……??? と思いましたが、Record.new
などとした時点で、このデータはcreated_at
カラムに自動的に挿入されているようです!
#その他
他にもいろいろあるようです。
###datetime_select
いろいろ用意されているみたいですね!