我在项目中使用 TypeORM,并且需要定义具有自定义 SQL 类型的列,特别是 PostgreSQL 中的 'tsmultirange'。不幸的是,TypeORM 不提供对设置此类类型的直接支持。是否有任何工具或解决方法可用于实现此目标?
是否有一种方法可以为 TypeORM 中的列指定自定义 SQL 类型:
我将非常感谢有关此事的任何信息。谢谢!
我尝试找到一种设置自定义类型的方法。不支持这样的记录:
@Column({ type: 'tsmultirange' })
我找到了问题的答案。
如果你想为TypeORM不支持的列设置类型,你需要:
转到配置并展开“supportedDataTypes”:
const dataSource = new typeorm.DataSource(defaultOptions);
dataSource.driver.supportedDataTypes.push('tsmultirange');
在元数据中设置所需的类型,在我的例子中,它是“tsmultirange”
(TypeScript 不允许您直接设置它,因此您必须禁用类型检查):
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
@Column({ type: 'tsmultirange' })
ranges: string;
享受新的可能性! =)