Golang导入结构并共享所有应用

时间:2018-07-06 12:49:07

标签: go

我想导入包并在main()函数中创建新的结构。

// main.go
import "testapp/app"
a := app.GetApp()
db, err := a.ConnectDatabase()
if err != nil {
    panic(err.Error())
}

// testapp/app.go
func (a *App) ConnectDatabase() {
  db, err := sql.Open()
  if err != nil {
    panic(err.Error())
  }
  a.db = db
}

我遇到了错误:

  

app.ConnectDatabase()用作值

我该如何解决?

1 个答案:

答案 0 :(得分:1)

enter image description here

您可能想要解决以下问题:

// main.go
import "testapp/app"
func main(){
    a := app.GetApp()
    err := a.ConnectDatabase()
    if err != nil {
        panic(err.Error())
    }
    a.db. //interesting db code here
}

// testapp/app.go
func (a *App) ConnectDatabase() error{
  db, err := sql.Open()
  if err != nil {
    return err
  }
  a.db = db
  return nil
}