Railsは初めてで、認証部分にdeviseを使用してアプリを作成しようとしています。最初に気付いたのは、ユーザーフィクスチャにIDがなかったためにテストが失敗したことでした。そこで、これをUser
モデルに配置しました。
self.primary_key = :id
これは私のテストの実行に役立ちましたが、今は別の問題で立ち往生しています。ユーザーを追加しようとするたびに、Deviseコントローラーは次のメッセージで失敗します。
ActiveRecord::StatementInvalid in Devise::RegistrationsController#create
SQLite3::ConstraintException: users.id may not be NULL: INSERT INTO "users" ("active", "created_at", "current_sign_in_at", "current_sign_in_ip", "default_business_id", "email", "encrypted_password", "first_name", "last_name", "last_sign_in_at", "last_sign_in_ip", "remember_created_at", "reset_password_sent_at", "reset_password_token", "sign_in_count", "updated_at") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
ユーザーIDが自動的に作成されないのはなぜですか?Rails3.2でDevise2を実行しています