-
-
Notifications
You must be signed in to change notification settings - Fork 657
Closed
Labels
Type: QuestionNeeds clarificationNeeds clarification
Description
I'm using version 5 of AdonisJs, and when I try to change the password column name to "senha (password in Portuguese Brazil)" I get an error that I don't know how to solve, before in v4 I could easily customize this field without problems, I am beginner in node, and I don't know much about TypeScript to the point of knowing how to solve it.
Console Message:
Auth user object must have a password in order to call "verifyPassword"My Model User
import { DateTime } from 'luxon'
import Hash from '@ioc:Adonis/Core/Hash'
import {
column,
beforeSave,
BaseModel,
} from '@ioc:Adonis/Lucid/Orm'
export default class Usuario extends BaseModel {
@column({ isPrimary: true })
public id: number
@column()
public usuario: string
@column()
public email: string
@column({ serializeAs: null, columnName: 'senha' })
public senha: string
@column()
public nome: string
@column()
public sobrenome: string
@column()
public rememberMeToken?: string
@column.dateTime({ autoCreate: true })
public createdAt: DateTime
@column.dateTime({ autoCreate: true, autoUpdate: true })
public updatedAt: DateTime
@beforeSave()
public static async hashPassword (usuario: Usuario) {
if (usuario.$dirty.sennha) {
usuario.senha = await Hash.make(usuario.senha)
}
}
}AuthController:
import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
import Hash from '@ioc:Adonis/Core/Hash'
export default class AuthController {
public async login ({request, auth}: HttpContextContract){
const usuario = request.input('username')
const senha = request.input('password')
//$2a$10$ccnXPRnKUHz0.Yd/C1xld.a5ZtLD/256CNfsPnfA0RHYM6Dehxxjy
const token = await auth.use('api').attempt(usuario, senha)
return {
...token.user.toJSON(),
...token.toJSON()
}
}
}Expected: change the name of the password column to another customized name.
ruanitto
Metadata
Metadata
Assignees
Labels
Type: QuestionNeeds clarificationNeeds clarification