length nil empty 曜日を日本語表示 git request pull marge
length,sizeが使えない
datetime型だと、length,sizeが使えなかった(NoMethodErrorになる)ので
オブジェクト.where(date:Date.today,).each do |box| if !(box["Time"].length == 0) get.push("box["Time"]}") end end
これで、データベース側のTimeのカラムがNullだとエラーが起きる。
レコードがNullの場合、そもそもeachでboxに何も代入されないので存在しない(=nil)ので
lengthが使えない。(何も存在しない≠0)
オブジェクトが文字列型や数値型であればlength,sizeは使える
nil?とempty?の違い
empty?は、オブジェクトの中身が何もないかどうかということを判別する
nil?は、オブジェクト自体存在してるかどうかを判別する
データベースからeachを使ってレコードを取り出すとき、レコードがNullはそもそも取り出されないので、判別するときはnil?を使うのが正しい
曜日を表示する
date = time.strftime("%m月%d日(#{%w(日 月 火 水 木 金 土)time.wday]})%H:%M")