Buenas, si no quieren colocar a cada entity los campos createAt
y updateAt
pueden crear una entidad básica que contenga estos atributos:
import { CreateDateColumn, UpdateDateColumn } from 'typeorm';
export class BasicEntity {
@CreateDateColumn({
type: 'timestamptz',
default: () => 'CURRENT_TIMESTAMP',
})
createAt: Date;
@UpdateDateColumn({
type: 'timestamptz',
default: () => 'CURRENT_TIMESTAMP',
})
updateAt: Date;
}
Y luego extender cada entidad que necesite estos campos:
import { BasicEntity } from 'src/database/base.entity';
import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
@Entity()
export class User extends BasicEntity {
@PrimaryGeneratedColumn()
id: number;
@Column({ type: 'varchar', length: 255 })
email: string;
@Column({ type: 'varchar', length: 255 })
password: string;
@Column({ type: 'varchar', length: 100 })
role: string;
}
De esta forma nos ahorramos un poco de tiempo al crear nuestras entidades
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?