Ich mache eine App in Schienen 5 mit Gerät. Aber nach der Migration von Benutzermodell, das durch devise verwendet wird, die Ergebnisse sind folgende:Devise mit Schienen 5
User.new =>
User id: nil,
email: "",
created_at: nil,
updated_at: nil.
während Es sollte wie gezeigt werden:
User id: nil,
email: "",
encrypted_password: "",
reset_password_token: nil,
reset_password_sent_at: nil,
remember_created_at: nil,
sign_in_count: 0,
current_sign_in_at: nil,
last_sign_in_at: nil,
current_sign_in_ip: nil,
last_sign_in_ip: nil,
created_at: nil,
updated_at: nil,
name: nil
Es bedeutet Felder nicht schaffen werden. Aber wenn ich die mysql-Datenbank sehe, werden alle Felder innerhalb der Benutzertabelle erstellt. Warum zeigt es dann nicht in der Rails-Konsole?
Im Folgenden sind die schema.rb:
ActiveRecord::Schema.define(version: 20160717050914) do
create_table "users", force: :cascade do |t|
t.string "email", default: "", null: false
t.string "encrypted_password", default: "", null: false
t.string "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.integer "sign_in_count", default: 0, null: false
t.datetime "current_sign_in_at"
t.datetime "last_sign_in_at"
t.string "current_sign_in_ip"
t.string "last_sign_in_ip"
t.string "confirmation_token"
t.datetime "confirmed_at"
t.datetime "confirmation_sent_at"
t.string "unconfirmed_email"
t.integer "failed_attempts", default: 0, null: false
t.string "unlock_token"
t.datetime "locked_at"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.index ["confirmation_token"], name: "index_users_on_confirmation_token", unique: true
t.index ["email"], name: "index_users_on_email", unique: true
t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
t.index ["unlock_token"], name: "index_users_on_unlock_token", unique: true
end
end
Hast du 'reload!' Deine Rails-Konsole? –
Ja, ich habe @zaph –