У меня есть 1: n ассоциация Company -> CompanySettings, я хочу найти Company по Id, затем создать companySettings для этого экземпляра и автоматически заполнить атрибут внешнего ключа
, используя sequelize-typescript
я пробовал $ get, $ add, $ count из функции ассоциации и ее работы
, но когда я пробую $ create функцию, она имеет ошибки
Класс компании
@Table({
tableName: 'company',
})
export class Company extends Model<Company> {
@Column({ allowNull: false, type: DataType.STRING(50) })
name: string
@CreatedAt
@Column({ field: 'created_at' })
createdAt: Date
@UpdatedAt
@Column({ field: 'updated_at' })
updatedAt: Date
@Column({ field: 'is_deleted', defaultValue: 'f', type: DataType.BOOLEAN })
isDeleted: boolean
@HasMany(() => CompanySettings)
settings: CompanySettings[]
Класс CompanySettings
@Table({
tableName: 'company_settings',
})
export class CompanySettings extends Model<CompanySettings> {
@ForeignKey(() => Company)
@Column
idCompany: number
@BelongsTo(() => Company)
company: Company
@Column({ type: DataType.ENUM('default', 'alwaysApprove', 'alwaysAsking') })
defaultBookingApproval: defaultBookingOptions
@Column({ type: DataType.SMALLINT })
budgetPeriod: number
@Column({ type: DataType.CHAR(2) })
startDate: string
@CreatedAt
@Column
createdAt: Date
@UpdatedAt
@Column
updatedAt: Date
@Column({ defaultValue: 'f', type: DataType.BOOLEAN })
isDeleted: boolean
controller
const companies = await Company.findOne()
return await companies.$create('settings', { startDate: '22' })
после поиска экземпляра источника, я хочу создать новый экземпляр, связанный с экземпляром источника
, но с ошибками
TypeError: this[("create" + string_1.capitalize(...))] is not a function
рассказатья где я не прав?