登录
首页 >  Golang >  Go问答

goqu 无响应

来源:stackoverflow

时间:2024-02-21 13:09:14 142浏览 收藏

来到golang学习网的大家,相信都是编程学习爱好者,希望在这里学习Golang相关编程知识。下面本篇文章就来带大家聊聊《goqu 无响应》,介绍一下,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

我正在尝试使用 https://github.com/doug-martin/goqu,尽管查询是正确的并且我已连接到数据库,但响应始终为空。

func goquBuilder() goqu.DialectWrapper {
    return goqu.Dialect("postgres")
}

    func (r *CourseRepo) GetAll() ([]Course, error) {
    var courses []Course

    query, res, err := goquBuilder().From(
        goqu.S(schema).Table("courses")).Prepared(true).ToSQL()

    if err != nil {
        clogger.Error(err)
    }

    for r := range res {
        fmt.Println(r)
    }

    fmt.Println(query)

    return courses, nil
}

正确答案


我是围棋新手,但请检查一下,

func goquBuilder() goqu.DialectWrapper {
    return goqu.Dialect("postgres")
}

func (r *CourseRepo) GetAll() ([]Course, error) {
    var courses []Course

    query := goquBuilder().From(
        goqu.T(schema, "courses")).Select(goqu.I("id"), goqu.I("name"), goqu.I("description"))

    sql, args, err := query.ToSQL()

    if err != nil {
        clogger.Error(err)
        return nil, err
    }

    rows, err := db.Query(sql, args...)
    if err != nil {
        clogger.Error(err)
        return nil, err
    }
    defer rows.Close()

    for rows.Next() {
        var c Course
        err := rows.Scan(&c.ID, &c.Name, &c.Description)
        if err != nil {
            clogger.Error(err)
            return nil, err
        }
        courses = append(courses, c)
    }

    if err = rows.Err(); err != nil {
        clogger.Error(err)
        return nil, err
    }

    return courses, nil
}

终于介绍完啦!小伙伴们,这篇关于《goqu 无响应》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>