teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追加質問に対して回答を追加

2021/02/10 07:35

投稿

oakbow
oakbow

スコア227

answer CHANGED
@@ -13,4 +13,27 @@
13
13
  ```
14
14
 
15
15
  お好きな方でどうぞ。
16
- slim の書き方を忘れたので erb 方式ですいません。
16
+ slim の書き方を忘れたので erb 方式ですいません。
17
+
18
+
19
+ --------------
20
+
21
+ なるべく自力で解決できるように回答するように心がけていますので、内容を読み解くようにしていただけると嬉しいです。
22
+
23
+ `datetime_field` にデフォルトの日付を渡すやり方は、上の回答の通り value に以下のような書式の datetime な文字列を渡すことで実現できます。
24
+
25
+ ```
26
+ Time.current.strftime('%Y-%m-%dT%T') # "2021-02-10T16:23:18"
27
+
28
+ ```
29
+
30
+ なので時分秒を `0:0:0` にしたかったら上の回答の通り、 `Time.current` 側で0時0分0秒にする( `Time.current.beginning_of_day` )か、文字列整形する `strftime` で時分秒を切り捨てるか、二通りの解決策があるわけです。
31
+
32
+ 今回はさらに日付を1固定にしたいということですので、上の二つのやり方で同じように対応することができます。
33
+ やり方はすでにお伝えしていますので、ぜひ挑戦してみてください。
34
+ 念のためヒントとなるサイトを提示しておきます。
35
+
36
+ * Time.current から日付操作をする場合...[https://qiita.com/halkt/items/ca0eb8e84b094ff754ea](https://qiita.com/halkt/items/ca0eb8e84b094ff754ea)
37
+ * strftime で文字列整形する場合...[https://docs.ruby-lang.org/ja/latest/method/Time/i/strftime.html](https://docs.ruby-lang.org/ja/latest/method/Time/i/strftime.html)
38
+
39
+ どちらを使ってもいいと思います。こういった日付操作は割とちょくちょくやることになるので、やり方を習得しておくと良いです。