在日常开发中,我们会遇到很多需要自动生成编码的地方,比如订单号,单据号等。
话不多说直接上代码
import { BeforeInsert, Column, Entity } from 'typeorm'; @Entity() export class YourEntity { // 其他字段... @Column({ unique: true }) //字段被设置为 unique: true,确保每个编码都是唯一的 code: string; @BeforeInsert() //实体的装饰器方法,用于在保存实体之前生成并设置代码编码。 generateCode() { const currentDate = new Date(); const datePart = currentDate.toISOString().slice(0, 10).replace(/-/g, ''); const randomPart = Math.random().toString(36).slice(2, 8).toUpperCase(); this.code = `${datePart}-${randomPart}`; } }
这样我们保存数据的时候,实体会自动生成code字段编码,大家可以根据自己的需求调整相应的代码!