首页 > 解决方案 > “mysql”数据库不支持“User.repositories”中的数据类型“Array”

问题描述

我有两个使用 typeorm 的实体,如下所示:

user.entity

  @Column({array: true})
  @OneToMany(() => Repository, repo => repo.user)
  repositories: Repository[];

repository.entity

  @ManyToOne(() => User, user => user.repositories)
  user: User;

为什么当我启动我的应用程序时,从我的 mysql 向我抛出一个错误:

Data type "Array" in "User.repositories" is not supported by "mysql" database

我尝试添加 @Column({array: true})但没有成功,我删除了所有数据库但它仍然无法正常工作

标签: javascriptmysqltypescripttypeorm

解决方案


@Column("text", {
    array: true
})
repositories: Repository[];

这可以解决您的问题,但请确保您确实需要相关array字段OneToMany

@OneToMany(() => Repository, repo => repo.user)
repositories: Repository[];

我想这就是你所需要的。参见多对一/一对多关系


推荐阅读