12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- 'use strict'
- /** @type {import('@adonisjs/framework/src/Hash')} */
- const Hash = use('Hash')
- /** @type {typeof import('@adonisjs/lucid/src/Lucid/Model')} */
- const Model = use('Model')
- class User extends Model {
- static finduser (type, value) {
- return this.findBy(type, value)
- }
- static boot () {
- super.boot()
- /**
- * A hook to hash the user password before saving
- * it to the database.
- */
- this.addHook('beforeSave', async (userInstance) => {
- if (userInstance.dirty.password) {
- userInstance.password = await Hash.make(userInstance.password)
- }
- })
- }
- /**
- * A relationship on tokens is required for auth to
- * work. Since features like `refreshTokens` or
- * `rememberToken` will be saved inside the
- * tokens table.
- *
- * @method tokens
- *
- * @return {Object}
- */
- tokens () {
- return this.hasMany('App/Models/Token')
- }
- }
- module.exports = User
|