任何人都可以解释这一点吗?我正在使用Populator和Faker gems将一些生成的数据放入我的数据库中。其中,我生成了10,000条评论(这些评论来自'acts_as_commentable'gem。所有这些都有效。但是,当我添加一条新评论时,出现错误,说我使用现有ID侵犯了主键。看看我的控制台输出如下:你可以看到我有1万条记录以ID 1开始,最后以ID 100000结束。然后我尝试添加一个新的评论并且失败了,这只会发生在这个模型/表格中。新用户等重复的ID正在生成违反主键约束
>> Comment.first(:order => 'id').id
=> 1
>> Comment.last(:order => 'id').id
=> 10000
>> Comment.count
=> 10000
>> Comment.create(:title => 'wtf is up?')
ActiveRecord::RecordNotUnique: PGError: ERROR: duplicate key value violates unique constraint "comments_pkey"
DETAIL: Key (id)=(1) already exists.
我怀疑这是关系到填充器的宝石是如何配料记录到数据库中。它只是发生在模型/桌,我用填充器看到的。
定为所有表序列哎呀。坏头衔!对于那个很抱歉。不知道该片段如何到达那里。对问题的描述不是很明确,是吗? :) – 2010-11-13 12:55:23
哦!我也可以编辑标题。固定。 – 2010-11-13 12:59:52