activerecord将NULL添加为'id'字段?

时间:2012-12-06 22:56:20

标签: ruby activerecord sinatra

我通过以下方式创建用户:

user = User.create attrs

基本上,它通过添加值为NULL的'id'字段搞砸了,我猜测它的结果为0.所以在第一个用户之后,我得到一个id必须是唯一的错误。我可以确认attrs哈希不包含'id'字段。

这是生成的SQL:

INSERT INTO `users` (`birthday`, `created_at`, `device_token`, `device_type`, `email`, `fb_id`, `first_name`, `gender`, `last_name`, `location`, `rstatus`, `updated_at`) VALUES ('1992-02-28 00:00:00', '2012-12-06 17:43:43', NULL, 'x86_64', 'adfas023@gmail.com', '12593646569', 'Test', 'male', 'Once', Test, 'Single', '2012-12-06 17:43:43')

发生了什么事?

由于

1 个答案:

答案 0 :(得分:3)

您的id列应该是自动递增的,您的迁移通常会确保这样做。如果您不能/不使用迁移,请手动修复它。