Golang中循环导入问题的解决方法
Golang中循环导入问题的解决方法 你好,
我在项目中遇到了循环导入的问题。假设我有两个文件 user.go 和 post.go,它们分别负责处理各自的模型。
user.go 文件如下所示:
package model
type User struct {
Email string
Password string
FirstName string
LastName string
}
而 post.go 文件如下:
package model
import (
user "github.com/me/go-blog/src/user"
)
type Post struct {
Title string
Body string
Author user.User
}
以上代码运行得很好,但我想在 User 中定义一个 Post 切片作为属性,如下所示:
package model
import (
post "github.com/me/go-blog/src/post"
)
type User struct {
Email string
Password string
FirstName string
LastName string
Posts []post.Post
}
这当然会导致循环导入,因为 Post 使用了 User。
我是否在根本上做错了什么?如果是的话,通常应该采用什么方法来实现我想要的效果?
谢谢!
更多关于Golang中循环导入问题的解决方法的实战教程也可以访问 https://www.itying.com/category-94-b0.html
2 回复
为什么它们都是同一个 model 包的一部分,却还要导入 user 和 post 呢?
更多关于Golang中循环导入问题的解决方法的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


