質問: 突然の投稿失礼します。 Rubyの開発を行なっているのですが、 モデルのDATETIMEカラムに格納されている日付のフォーマットを設定する際に nomethodErrorとなってしまい原因がわからずフォーマットが設定できないままでいます。 また、modelの標準で作成される * created_at * update_at に関しては、意図したformatになるためより原因がわからない状態です。 ### Version * ruby 2.31 * rails 5.0.2 ### 前提・実現したいこと モデルのDATETIME型であるカラムをViewで表示する際にフォーマットを設定したい。 2017-05-23 00:00:00 +0900 上記を YYYY/MM/DD 形式に変えたいのですが、うまく行かずに困っています。 ### 発生している問題・エラーメッセージ ``` undefined method `strftime' for nil:NilClass ``` ### 該当のソースコード ``` <%= request_form.updated_at.strftime("%Y/%m/%d %H:%m") %> <%= request_form.deadline.strftime("%Y/%m/%d") %> ``` ### テーブル情報(schemaより一部抜粋) ``` create_table "request_forms", force: :cascade, options: "ENGINE=InnoDB DEFAULT CHARSET=utf8" do |t| t.datetime "deadline" t.datetime "correction_date" t.datetime "address_renewal_date" t.datetime "created_at", null: false t.datetime "updated_at", null: false end ``` ### 試したこと テーブルの型を見直したり、うまくフォーマットされているものをコピペで使って見ましたが、エラーは解消しませんでした。 .strftime("%Y/%m/%d")を省くと、2017-05-23 00:00:00 +0900の形式で日付が表示されるため、カラムが空ということもありませんでした。 どうかご助言をお願いします。
回答: 自己解決致しました。 ``` .strftime("%Y/%m/%d")を省くと、2017-05-23 00:00:00 +0900の形式で日付が表示されるため、カラムが空ということもありませんでした。 ``` 上記の補足を記述しましたが、一部レコードがdeadlineカラムがnullで入っていました。。。 nullのレコードに適当な日付を入力したらエラーは解消しました。 お騒がせして申し訳ございません。