Railsでモデル.new
して、オブジェクトを生成したときは、id
がnil
になっている。
obj = Article.new => #<Article id: nil, title: nil, created_at: nil, updated_at: nil>
id
はモデル.new
では生成されず、モデル.create
、またはモデル.save
でデータベースに保存した時に割り振られる。
obj = Article.new => #<Article id: nil, title: nil, created_at: nil, updated_at: nil> obj.save obj => #<Article id: 2, title: nil, created_at: "2016-07-13 13:35:33", updated_at: "2016-07-13 13:35:33">
参考:Rails: id field is nil when calling Model.new – stackoverflow