LoginSignup
0
2

More than 5 years have passed since last update.

【rails5】form_forでtime_fieldを使い、string型で時間を[00:00]のように表示させるには

Last updated at Posted at 2018-12-09

【問題】formにtime_fieldを使用し、基本時間と指定勤務時間をブラウザに表示させたいが、年月やUTCまで表示されてしまう。

【実現したいこと】
「00:00」という形で表示させたい。

【試したこと】
この記事を参考にしていると、railsには時間のみを扱えるクラスはないとの事。
[(https://blog.willnet.in/entry/2015/06/12/063731)]
configにtime_zoneの型を指定しても表示が変わらない。

調べていくと、そもそもがテーブルに追加した指定勤務時間と基本時間の型を、time型にしていたからでした。

string型で文字列として時間を受け取ればいいのでは?とい思い検証。

①新しいマイグレーションファイルを作成し、指定勤務時間と基本時間をstring型にカラムを変更

②db:migrate:reset

③db:seed

こうするとイメージ通り表示出来ました。

【結論】
time_fieldで「00:00」というように値を送信し、それをstring型として受け取り、ビューで表示させる

ということでした。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2