@Zomdies

Как создать связь многие ко многим, через одну таблицу?

Нужно с помощью подхода CodeFirst описать модель. Имеется пользователь, и у него должно быть роле friends, которое и будет ссылать нас на пользователя. Я создал 2 модели, но ни как не могу понять как их связать. Как мне настроить ассоциацию ?
Модель User
60c2494759df7826347284.png
Модель Friend
60c249695f8f8255927260.png

@Table({tableName: 'friends', createdAt: false, updatedAt: false})
export class Friend extends Model<Friend,FriendCreationAttrs> {

    
    @Column({type: DataType.INTEGER, unique: true, primaryKey: true, autoIncrement: true})
    id: number;

    @ForeignKey(() => User)
    @Column({type: DataType.INTEGER})
    UserIdFrom: number;

    @ForeignKey(() => User)
    @Column({type: DataType.INTEGER})
    UserIdTo: number;
}


@Table({tableName: 'users',createdAt: false, updatedAt: false})
export class User extends Model<User, UserCreationAttrs> {


    @Column({type: DataType.INTEGER, unique: true, primaryKey: true, autoIncrement: true})
    id: number;

    @Column({type: DataType.STRING, unique: true, allowNull: false})
    email: string;

    @Column({type: DataType.STRING, allowNull: false})
    password: string;
}
  • Вопрос задан
  • 101 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы