typeORM: "message": "\"postgres\" 数据库不支持 \"..." 中的数据类型 \"Obj
Posted
技术标签:
【中文标题】typeORM: "message": "\\"postgres\\" 数据库不支持 \\"..." 中的数据类型 \\"Object\\"。"【英文标题】:typeORM: "message": "Data type \"Object\" in \"..." is not supported by \"postgres\" database."typeORM: "message": "\"postgres\" 数据库不支持 \"..." 中的数据类型 \"Object\"。" 【发布时间】:2021-01-28 17:04:17 【问题描述】:给定以下实体定义:
@Entity()
export class User extends BaseEntity
@Column( nullable: true )
name!: string | null;
@Column()
age!: number;
出现如下错误:
typeORM: "message": "Data type \"Object\" in \"User.name" is not supported by \"postgres\" database."
...
name: 'DataTypeNotSupportedError',
message:
'Data type "Object" in "User.name" is not supported by "postgres" database.'
查看构建时,我看到 TS 发出的元数据将其作为对象处理:
__decorate([
typeorm_1.Column( nullable: true ),
__metadata("design:type", Object)
], User.prototype, "name", void 0);
我做错了什么?
【问题讨论】:
我找到了这个问题的答案here 【参考方案1】:问题出在这部分:
@Column( nullable: true )
name!: string | null;
创建联合类型时,反射类型将为Object
。
克服它的一种简单方法是执行以下操作:
@Column( nullable: true )
name?: string;
【讨论】:
【参考方案2】:您需要明确提供数据类型。
@Column( type: 'varchar', nullable: true )
name: string | null;
【讨论】:
以上是关于typeORM: "message": "\"postgres\" 数据库不支持 \"..." 中的数据类型 \"Obj的主要内容,如果未能解决你的问题,请参考以下文章
OAuthException using Socialite with facebook - "message": "必须使用活动访问令牌来查询有关当前用户的信息。&qu
Data source rejected establishment of connection, message from server: "Too many connections&qu
Data source rejected establishment of connection, message from server: "Too many connections&qu
Data source rejected establishment of connection, message from server: "Too many connections&qu
SyntaxError: Unexpected token import MigrationInterface, QueryRunner from "typeorm"