sessionに何がはいいているのか確認したい時
to_hashメソッドで行ける
session.to_hash => {"session_id"=>"id id id id id id id id id"}
to_hashメソッドで行ける
session.to_hash => {"session_id"=>"id id id id id id id id id"}
秒まで選択しなくてはいけなくなる
秒を消す
valueに分までの初期値を渡して上げる
<%= form.datetime_field :record_at, value: Time.zone.now.strftime('%Y-%m-%dT') %>
下記のどちらかで行けるみたい
t.datetime :created_at, default: DateTime.now t.datetime :created_at, default: -> { 'NOW()' }
確かpostgresじゃないと上手く行かないなどのDBに依存する様な気がしました。
テキストエリアにカーソル位置で文字を挿入する
実装に関しては参考記事とてもわかり易いので参考にしてください
下記の2つのメソッドの使い方を理解する必要がある - selectionStartメソッド - substrメソッド
選択した要素の開始位置を教えてくれるらしい
指定した位置で文字を切り出してくれる
const str = 'Mozilla'; ## 開始位置から終了位置を指定すると文字列を返却してくれる console.log(str.substr(1, 2)); // expected output: "oz" ## 指定した位置以降の文字列を返却してくれる console.log(str.substr(2)); // expected output: "zilla"
selectionStartメソッドで、入力位置を取得して、 substrメソッドで、カーソルの開始位置を渡してあげれば、任意の場所で文字を分割できるので簡単に文字を挿入できる
時間を扱うときに、毎回時間に時間に関して調べてしまう人向け
下記の2点だけ理解しておけば今後は迷わなくなる
月日はDateクラスだけ 年月日時は DateTime Timeだけ
年のありなしは利用用途に応じて選択すれば良い
これは、世界の標準の時間(協定世界時)があって、日本はどれくらいの時間差があるのか、 を知って置く必要がみたい 日本は+9時間。
rubyの場合
## JSTはJapan Standard Timeの略らしい [11] pry(main)> Time.zone.now => Sun, 19 Dec 2021 22:28:04 JST +09:00 ## zoneをつけない [12] pry(main)> Time.now => 2021-12-19 22:29:43 +0900
zoneをつけると下記の time_zoneのをUTC(協定世界時)に変える
config.time_zone = 'UTC' config.active_record.default_timezone = :local ## + 9時間されていない [1] pry(main)> Time.zone.now => Sun, 19 Dec 2021 13:33:21 UTC +00:00 ## 日本時間 22:34
form_for model の modelが、persisted?かどうかで patchにするか postにするかを判定している様子
formタグ
の method="post"
の箇所がputなどになるのかと思ったら、
<input type="hidden" name="_method" value="patch">
のhiddenフィールドが入っていた。
zoneをつけると、現地の現在時刻を表示する
## 8時間ずれる [27] pry(main)> Time.now.to_s => "2021-03-22 02:26:49 +0000" ## 現在時刻 [28] pry(main)> Time.zone.now.to_s => "2021-03-22 11:26:53 +0900"