如何获取实体表名?(例如: 会员预售详情)\n我想设置表格注释
\n// Seeder: Clear & set Comment\nexport default class ClearAllSeed implements Seeder {\n public async run(factory: Factory, connection: Connection): Promise<void> {\n\n\n const deleteEntities = [\n {table: OrderHead, comment: '\xe8\xa8\x82\xe5\x96\xae/\xe4\xb8\xbb\xe8\xa1\xa8'},\n ]\n\n for(const entity of deleteEntities){\n await connection\n .createQueryBuilder()\n .delete()\n .from(entity.table)\n .execute();\n\n await connection\n // >>>> but table name is MemberPreSaleDetail not member-pre-sale-detail\n .query(`alter table ${entity.table.name} comment '${entity.comment}'`);\n }\n }\n}\n\n// Sampel Entity\n@Entity('member-pre-sale-detail')\nexport class MemberPreSaleDetail {\n @PrimaryGeneratedColumn({unsigned: true})\n id?: number;\n\n @Column({comment: '\xe5\xb9\xbe\xe6\x89\xb9(\xe6\x95\xb4\xe6\x89\xb9)', type: 'mediumint', default: 0})\n batchQty: number;\n}\n
Run Code Online (Sandbox Code Playgroud)\n获取“会员预售详情”字符串
\n我猜你正在使用 TypeORM。在这种情况下:
您可以通过调用获取实体元数据connection.getMetadata(MemberPreSaleDetail)
。
此方法返回一个EntityMetadata,它具有name
、tableName
和givenTableName
属性。对于您的用例,我想您可以简单地使用givenTableName
.