Ich habe eine Benutzer Tabelle mit Ebenen der Berechtigung ... (Kunde/Hersteller/Admin) aber ich kann nicht scheinen, einen neuen Benutzer mit Standard auf 0 gesetzt, die "Kunde" der Fehler gleich wäre sagt "'0' ist kein gültiger Freigabebetrag?"Enum active record space_level Probleme
Hier ist mein Benutzermodell
class User < ApplicationRecord
include Clearance::User
validates :email, presence: true
validates :password, presence: true
validates :password, confirmation: { case_sensitive: true }
enum clearance_level: [:customer, :vendor, :admin]
end
und dies ist meine Migrationsdatei ... (i die Spalte entfernt und wieder hinzugefügt einhüllen, dass es gelöst?)
class ChangeClColumns < ActiveRecord::Migration[5.1]
def change
remove_column :users, :clearance_level
add_column :users, :clearance_level, :integer, :default => 0
end
end
Auch mein Schema
create_table "users", force: :cascade do |t|
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "email", null: false
t.string "encrypted_password", limit: 128, null: false
t.string "confirmation_token", limit: 128
t.string "remember_token", limit: 128, null: false
t.string "first_name"
t.string "last_name"
t.date "date_of_birth"
t.integer "clearance_level", default: 0
t.index ["email"], name: "index_users_on_email"
t.index ["remember_token"], name: "index_users_on_remember_token"
Ende