javascript - “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})
但没有成功,我删除了所有数据库但它仍然无法正常工作
解决方案
@Column("text", {
array: true
})
repositories: Repository[];
这可以解决您的问题,但请确保您确实需要相关array
字段OneToMany
。
@OneToMany(() => Repository, repo => repo.user)
repositories: Repository[];
我想这就是你所需要的。参见多对一/一对多关系
推荐阅读
- snowflake-cloud-data-platform - 三秘密的好处
- sql-server - 在 ROW_NUMBER() OVER ( ORDER BY ) 中使用 case 语句会导致严重的性能问题
- c++ - 编译器错误。编译的 c++ .exe 是 16 位的
- kubernetes - K8s 从正在运行的集群中取回我的 yaml 文件
- google-apps-script - 将变量值放入特定单元格
- c++ - 为什么 VS 看不到包含的文件?
- linux - Bash 脚本:带有命令替换的`cd`
- amazon-web-services - 如何通过主机名而不是地址连接到 Kubernetes 服务?
- vue.js - Nuxt 内容:如何从 markdown/yaml 链接到二进制文件?
- linux - 用于 Linux 触摸移动操作系统的 ElectronJS?