Использую:
"sequelize": "^6.6.5",
"sequelize-typescript": "^2.1.0",
Есть модель данных компании, которая может быть дочкой другой компании и соответственно имеется:
@ForeignKey(() => Company)
@Column({
type: DataType.INTEGER
})
parentId: number;
@BelongsTo(() => Company, "parentId")
parent: Company;
@HasMany(() => Company, "parentId")
subsidiaries: Company[];
Через миграцию добавляю в БД:
"parentId": {
"onDelete": "NO ACTION",
"onUpdate": "CASCADE",
"references": {
"model": "companies",
"key": "id"
},
"allowNull": true,
"type": Sequelize.INTEGER
},
В БД все хорошо:
Но когда запрашиваю из БД через
const company = await Company.findByPk(companyId, { include: [{ model: Company, as: "parentId" }] });
Выдается ошибка:
Company is associated to Company multiple times. To identify the correct association, you must use the 'as' keyword to specify the alias of the association you want to include.