Qualche idea su come creare e salvare un nuovo oggetto utente con idea dalla console ruby?
Quando ho provato a salvarlo, sto diventando sempre falso. Immagino che mi manchi qualcosa ma non riesco a trovare alcuna informazione correlata.
Qualche idea su come creare e salvare un nuovo oggetto utente con idea dalla console ruby?
Quando ho provato a salvarlo, sto diventando sempre falso. Immagino che mi manchi qualcosa ma non riesco a trovare alcuna informazione correlata.
Risposte:
È possibile aggiungere false al metodo save per saltare le convalide, se lo si desidera.
User.new({:email => "guy@gmail.com", :roles => ["admin"], :password => "111111", :password_confirmation => "111111" }).save(false)
Altrimenti lo farei
User.create!({:email => "guy@gmail.com", :roles => ["admin"], :password => "111111", :password_confirmation => "111111" })
Se hai il confirmable
modulo abilitato per la progettazione, assicurati di impostare il confirmed_at
valore su qualcosa come Time.now
durante la creazione.
Dovresti essere in grado di farlo usando
u = User.new(:email => "user@name.com", :password => 'password', :password_confirmation => 'password')
u.save
se questo restituisce falso, puoi chiamare
u.errors
per vedere cosa è andato storto.
Confirmable
, chiamau.confirm!
Quando sul tuo modello ha: opzione confermabile significa che l'utente oggetto deve essere confermato per primo. Puoi fare due modi per salvare l'utente.
un. il primo è saltare la conferma:
newuser = User.new({email: 'superadmin1@testing.com', password: 'password', password_confirmation: 'password'})
newuser.skip_confirmation!
newuser.save
b. o usa conferma! :
newuser = User.new({email: 'superadmin2@testing.com', password: 'password', password_confirmation: 'password'})
newuser.confirm!
newuser.save
Se si desidera evitare di inviare e-mail di conferma , la scelta migliore è:
u = User.new({
email: 'demo@greenant.com.br',
password: '12feijaocomarroz',
password_confirmation: '12feijaocomarroz'
})
u.confirm
u.save
Quindi, se stai usando una e-mail falsa o non hai una connessione Internet, questo eviterà errori.
confirm!
ora è soloconfirm
Nessuna delle risposte sopra ha funzionato per me.
Questo è quello che ho fatto:
User.create(email: "a@a.com", password: "asdasd", password_confirmation: "asdasd")
Tieni presente che la password deve contenere più di 6 caratteri.