Aller au contenu principal

41-1 Créer une colonne rôle

On ajoutera une colonne à l'utilisateur pour contenir un rôle admin ou utilisateur. Comme les choix de rôle sont des options prédéfinies, on utilisatera un enum.

À noter qu'il est fréquent d'utiliser une autre table pour contenir les rôles, mais pour notre besoin, nous pouvons garder le tout simple.

  1. Premièrement, créez un enum de Role.
    src/utilisateurs/entities/role.enum.ts
    export enum Role {
    Utilisateur = 'utilisateur',
    Admin = 'admin',
    }
  2. Ensuite, dans l'entité Utilisateur, on peut ajouter une colonne de type enum, reliée à l'enum Role:
    src/utilisateurs/entities/utilisateur.entity.ts
      @Column({
    type: 'enum',
    enum: Role,
    default: Role.Utilisateur,
    })
    role: Role;

La requête SQL suivante devrait être exécutée pour ajouter la colonne:

query: ALTER TABLE `utilisateur` ADD `role` enum ('utilisateur', 'admin') NOT NULL DEFAULT 'utilisateur'

Ensuite, dans votre outil de gestion de base de données préféré, si vous aviez déjà des utilisateurs, ces derniers devraient s'être fait attribuer automatiquement le rôle utilisateur, puisqu'il s'agit de la valeur par défaut.

img