在我的Nest.js项目中,我的实体中具有以下模式:
@Entity
class ArticleEntity {
@PrimaryGeneratedColumn()
id: number;
@Column({type: 'jsonb'})
title: {[locale: string]: string};
}
然后,我想使用locale
参数调用fetching方法,并在加载时触发一个钩子,该钩子将使用传递的title
键下的字符串值替换locale
中的对象。我不知道该怎么做,因为我对TypeORM的钩子没有经验,而且因为ArticleEntity的形状已经由该类定义,并且title
字段的类型为{[locale: string]: string}
,而不是{ {1}}。
我以前在Sequelize中做到了,它看起来像这样:
string
...尽管显然不是JavaScript的TypeScript会抱怨类型不匹配:)
我什至不确定在TypeORM中是否应该使用钩子或其他获取数据的方法。我希望所有获取方法都能正常工作。有办法吗?