私の Rails プロジェクトでは、devise gem を使用して、電子メール ログインからユーザー名ログインに切り替えようとしています。これまでのところ、すべての手順を実行しましたが、キュウリを実行すると、次の出力が表示されます。
Given a user "Aslak" exists
# features/step_definitions/login_steps.rb:16
unknown attribute: username (ActiveRecord::UnknownAttributeError)
./features/step_definitions/login_steps.rb:17:in `/^a user "(.*?)" exists$/'
features/login.feature:4:in `Given a user "Aslak" exists'
与えられたユーザー「Aslak」の存在は次のようになります。
Given /^a user "(.*?)" exists$/ do |user_name|
@user = User.create!(:username => user_name, :password => "s3cr3t")
end
しかし、レールcを行うと
u = User.first
次の出力が表示されます。
=> #<User id: 1, email: "aslak@tamarawobben.nl", encrypted_password: "$2a$10$XjYgPtD4Ol4/sEpe934O6.yPcxs.jBF.m9SNTV.qhJp4...", reset_password_token: nil, reset_password_sent_at: nil, remember_created_at: nil, sign_in_count: 3, current_sign_in_at: "2012-11-05 20:27:44", last_sign_in_at: "2012-11-05 19:35:00", current_sign_in_ip: "127.0.0.1", last_sign_in_ip: "127.0.0.1", created_at: "2012-11-03 20:21:54", updated_at: "2012-11-06 07:58:36", username: "asLak">
したがって、ユーザー名が存在しているように見えます。
誰でもこれを解決する方法を考えていますか?
ロエロフ