从何处获取数据库上下文查询?

我使用 https://entgo.io/ 作为实体框架,https://echo.labstack.com/ 作为Web框架。

请考虑以下代码段:



func main() {


    client, err := Open("postgresql://pgadmin:pgpw@127.0.0.1/nfeed")

    if err != nil {

        log.Fatal(err.Error())

        return

    }

    ctx := context.Background()


    if err := client.Schema.Create(ctx); err != nil {

        log.Fatal(err)

        return

    }



    e := echo.New()



    e.GET("/hashtags", func(c echo.Context) error {

        pattern := c.QueryParam("pattern")

        if len(pattern) == 0 {

            return c.JSON(http.StatusNotFound, err)

        }


        hs, err := client.Hashtag.Query().All(????)



        return c.JSON(http.StatusOK, "Hello")

    })

    e.Logger.Fatal(e.Start(":3000"))

}


函数调用需要 https://pkg.go.dev/context 作为参数。client.Hashtag.Query().All(context)


问题是,我如何或在哪里可以获得上下文?在我看来,Echo框架应该为我提供一个上下文。不幸的是,我在Echo模块中找不到。


胡子哥哥
浏览 69回答 1
1回答

牧羊人nacy

您在行上定义了一个上下文变量,这是一个有效的类型,在您自己的链接 https://pkg.go.dev/context 中有很好的文档。ctx := context.Background()context没有理由不起作用,如果你需要更多,那么你可以查看有关如何制作更深入的上下文变量的文档。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go