运行时" rake aborted! unknown attribute: date " 耙子 db:种子



rake abort !未知属性:date

我终于能够迁移我的数据库内容,但遇到这个不幸的错误。

是因为日期属性比实际的新数据库更老吗?日期在我的模型中没有明确定义,但显然数据之前在旧数据库中,并且没有手动输入。我认为。timestamp照顾初始化,所以我想问题是为什么我不能种子到我的数据库?有什么想法吗

我的种子文件看起来像这样:

Indication.create([
  { :name => "general", :date => "2012-11-09 17:36:25" },

看起来您的Indication模型没有date字段。您是否需要创建一个迁移来添加一个?

因此,以防有人遇到同样的问题,以下是我的解决方案:

我的seed:dump提取了本例中的数据"2012-11-09 17:36:25",并将其赋值为变量"date"。虽然我仍然不确定为什么会发生这种情况,但它与t.timestamp命令有关。

t。时间戳创建了2个变量:

  1. created_at
  2. updated_at

副文件有2012-11-09 17:36:25作为"日期"变量,这是基于格式的合理猜测,但对于Rails应用程序标准来说这是错误的。我的表只有两个datetime格式的变量,就是我上面提到的。

我打开种子文件,把所有的":date"替换为":created_at",问题就解决了。Updated_at然后自动获取该值(更新的at不会从我的旧数据库转移到这个新数据库)。

created_as数据确实传输并且是正确的。updated_at在所有数据中获得相同的值(我注意到它是日期和时间,并执行rake db:seed:load命令。

最新更新