有人可以向我解釋import
語句的工作原理嗎?`import`語句的用法
比如我在myapp/app/models
包類型User
:
package models
type User struct {
// exportod fields
}
我在myapp/app/controllers
包類型Users
:
package controllers
import (
_ "myapp/app/models"
"github.com/revel/revel"
)
type Users struct {
*revel.Controller
}
func (c Users) HandleSubmit(user *User) revel.Result {
// Code here
}
這給了我下面的錯誤:
undefined: User
我試圖進口更改爲以下代碼:
import (
. "advorts/app/models"
"github.com/revel/revel"
)
但得到這個錯誤:
undefined: "myapp/app/controllers".User
哪我也不明白。那麼,import . "something"
和import "something"
之間有什麼區別?如何正確import
我的模型在我的情況?
'進口。如果你熟悉Python,那麼「something」就類似於'from something import *'。從最基本的意義上講,你將「something」包的內容導入到當前命名空間中,而不是'something.NewThing()',它只是'NewThing()'。這通常是可以避免的,儘管測試框架Ginkgo以一種非常有效的方式使用它,恕我直言。至於您的佈局導入問題,我建議重新閱讀關於如何佈局Go項目的文檔。 – sberry