【发布时间】:2015-11-30 06:02:02
【问题描述】:
我通过以下步骤创建了一个简单的 Rails 项目:
- 导轨新。
- rails g 脚手架柱
- rails g 脚手架拼图
- rails g 模型 PostComment post_id:integer
- rake db:迁移
- rails g model PuzzleSave puzzle_id:integer
- rake db:迁移
在第 5 步之后,rake 测试成功。 在第 7 步之后,所有 rake 测试都失败并出现相同的错误:
ActiveRecord::StatementInvalid: SQLite3::ConstraintException: NOT NULL 约束失败:puzzle_saves.created_at: INSERT INTO "puzzle_saves" ("puzzle_id") 值 (1)
这个奇怪的错误是怎么发生的? created_at 字段不是自动生成的吗?而且我看不出在第 4 步和第 6 步中创建的模型之间有任何差异。
环境:
- ruby 2.0.0p353(2013-11-22 修订版 43784)[i386-linux]
- Rails 4.2.4
【问题讨论】:
标签: ruby-on-rails-4 activerecord