28 lines
		
	
	
		
			672 B
		
	
	
	
		
			TypeScript
		
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			672 B
		
	
	
	
		
			TypeScript
		
	
	
	
import { DateTime } from 'luxon'
 | 
						|
import { BaseModel, beforeSave, column } from '@ioc:Adonis/Lucid/Orm'
 | 
						|
import Hash from '@ioc:Adonis/Core/Hash'
 | 
						|
 | 
						|
export default class Users extends BaseModel {
 | 
						|
  @column({ isPrimary: true })
 | 
						|
  public id_user: number
 | 
						|
 | 
						|
  @column()
 | 
						|
  public username: string
 | 
						|
 | 
						|
  @column({ serializeAs: null })
 | 
						|
  public password: string
 | 
						|
 | 
						|
  @column.dateTime({ autoCreate: true })
 | 
						|
  public createdAt: DateTime
 | 
						|
 | 
						|
  @column.dateTime({ autoCreate: true, autoUpdate: true })
 | 
						|
  public updatedAt: DateTime
 | 
						|
 | 
						|
  @beforeSave()
 | 
						|
  public static async hashPassword (user: Users) {
 | 
						|
    if (user.$dirty.password) {
 | 
						|
      user.password = await Hash.make(user.password)
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 |