2011-10-04 42 views
1

我使用seeds.rb创造两个记录,其中一个属于其他失败:seeds.rb用的SQLite3 :: ConstraintException的关系

new_account = Account.create(name: 'AccountName') 
new_user = User.create(
    email: '[email protected]', 
    password: 'pass', 
    password_confirmation: 'pass', 
    account: new_account) 

这将失败,SQLite3::ConstraintException,抱怨我m没有设置account_id。它成功,如果我明确设置ID:

new_account = Account.create(name: 'AccountName') 
new_user = User.create(
    email: '[email protected]', 
    password: 'pass', 
    password_confirmation: 'pass', 
    account_id: new_account.id) 

我的理解是,前一种方法应该工作 - 我会错了,还是我只是做错了?我在Rails 3.1.0上,Devise 1.4.7。

+0

这里有什么不对,第一种方法对我来说使用rails 3.1.0和sqlite工作得很好。 –

+0

你可以发布你的模型? –

回答

1

它不应该以第一种方式工作,如您的错误所示。您必须像第二个示例中那样明确指定id。 :)