как решить цикл импорта во многих отношениях многих - PullRequest
0 голосов
/ 24 сентября 2019

Когда я использую echo и gorm для веб-приложения, я обнаружил, что это будет цикл импорта во многих при разработке модели отношений.

Например, есть пользователь и язык двапакет.Их много ко многим, потому что один пользователь может говорить на нескольких языках, а несколько пользователей могут говорить на одном языке.Пакет включает определение модели и некоторую функцию-обработчик.

user.go

type User struct {
    gorm.Model
    Languages         []language.Language `gorm:"many2many:user_languages;"`
}

language.go

type Language struct {
    gorm.Model
    Name string
    Users             []user.User `gorm:"many2many:user_languages;"`
}

Пакет пользователя будет импортировать язык и языкПакет импортирует пользователя, поэтому происходит цикл импорта.

...