如何避免 n-n 关系中的“导入循环”

一个角色有多个账号,一个账号有多个角色。


如何模拟避免导入周期?


在我的 $GOROOT 里面


sandbox/

├── hello-world.go

├── orm

│   ├── main

│   │   └── main.go

│   └── model

│       ├── account

│       │   └── account.go

│       └── role

│           └── role.go

猫沙箱/orm/main/main.go


package main


import (

    "sandbox/orm/model/account"

)


func main() {


    a := account.Account

}

猫沙箱/orm/model/account/account.go


package account


import (

    "sandbox/orm/model/role"

)


type Account struct {

    id    int

    roles []role.Role

}

猫沙箱/orm/model/role/role.go


package role


import (

    "sandbox/orm/model/account"

)


type Account struct {

    id    int

    roles []role.Role

}


繁星点点滴滴
浏览 198回答 1
1回答

料青山看我应如是

这在“ golang 中的循环依赖项和接口” 中得到了解决,特别是:将 API 中需要导入的对象类型替换为基本类型和接口。或者把它们放在同一个包里。我在“ Golang 中的“相互”包导入中展示了一个例子。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go