Nestjs 类型';问题类型';不可分配给类型';型号类型';

Nestjs 类型';问题类型';不可分配给类型';型号类型';,nestjs,sequelize-typescript,Nestjs,Sequelize Typescript,在模型中添加关系时,我发现错误类型“typeof Questions”不可分配给类型“typeof Model”。 问题.model.ts import { Column, Table, PrimaryKey, Default, DataType, Model } from "sequelize-typescript"; @Table({timestamps: true}) export class Questions extends Model<Questions&

在模型中添加关系时,我发现错误
类型“typeof Questions”不可分配给类型“typeof Model”。

问题.model.ts

import { Column, Table, PrimaryKey, Default, DataType, Model } from "sequelize-typescript";

@Table({timestamps: true})
export class Questions extends Model<Questions> {

    @PrimaryKey
    @Default(DataType.UUIDV1)
    @Column(DataType.UUID)
    id: string;

    @Column
    question: string;

    @Column({ defaultValue: true })
    isActive: boolean;
}

从Nest网站上的文档来看,
Model
应该来自
sequelize-typescript
。您正在从
sequelize/types
导入它,我也遇到了同样的问题。可以通过删除类型构造函数(
)来解决此问题

在我的例子中,我有一个QuestionsAttributes界面,必须更改:

class TalentData extends Model<TalentData, TalentDataAttributes>

但这似乎是sequelize typescript错误。

假设我们有两个表LIKE和Quotes,我们只想引用quote\u id作为LIKE表中的外键:
像这样定义外键

@ForeignKey(() => Quotes)
@Column
quote_id: number;  

@BelongsTo(() => Quotes, {onDelete: "cascade", foreignKey: "quote_id"})
quote: Quotes;

注意-请从sequelize typescript导入BelongsTo,而不是sequelize/types

更新了从sequelize typescript导入的内容,但问题仍然存在
class TalentData extends Model<TalentData, TalentDataAttributes>
class TalentData extends Model implements TalentDataAttributes
@ForeignKey(() => Quotes)
@Column
quote_id: number;  

@BelongsTo(() => Quotes, {onDelete: "cascade", foreignKey: "quote_id"})
quote: Quotes;