Rails6 のちょい足しな新機能を試す10(year_format(令和ネタ)編)


はじめに

Rails 6 に追加されそうな新機能を試す第10段。 今回のちょい足し機能は、 date_select の year_format 編です。

datetime_select, date_select で year_format オプションを指定することで、年の書式を指定できるようになりました。

記載時点では、Rails は 6.0.0.rc1 です。 gem install rails --prerelease でインストールできます。

今回は、せっかくなので、「令和」に対応した Ruby 2.6.3 を使ってます。

$  rails --version

Rails 6.0.0.rc1


プロジェクトを作成する

rails プロジェクトを作成します。

$ rails new sandbox6_0_0rc1


scaffold で CRUD を作成する

$ cd sandbox6_0_0rc1

$ bin/rails g scaffold User name birth_at:datetime
$ bin/rails db:create db:migrate


app/views/users/_form.html.erb を編集する

:year_format オプションを追加して年の書式を変更してみます。


app/views/users/_form.html.erb

  ...

<%= form.datetime_select :barth_at, year_format: ->year { "#{Date.new(year, 12, 31).jisx0301.split('.').first}(#{year})" } %>


登録画面を表示

User の登録画面を表示してみると、年の書式が変わっていることがわかります。

year_fmt.png


参考情報