dourunlao1642 2013-09-23 21:30
浏览 47
已采纳

在Gorp中使用Select时出现问题

I'm receiving the following error when trying to SELECT with gorp:

No table found for type: Post

Here's what my code looks like:

type Post struct {
    Id         int64  `db:"post_id"`
    CreatedAt  int64  `db:"created_at"`
    UpdatedAt  int64  `db:"updated"`
    Title      string `db:"title"`
}

var list []*Post
_, err := dbMapper.Select(&list, "SELECT * FROM posts")

if (err != nil) {
    fmt.Fprintf(writer, "%s", err)
    return
}

for _, item := range list {
    fmt.Fprintf(writer, "%s
", item.Title)
}

I'm adding the table like this:

dbMapper.AddTableWithName(Post{}, "posts").SetKeys(true, "Id")
  • 写回答

1条回答 默认 最新

  • dongyumiao5210 2014-05-25 12:19
    关注

    It doesn't seem like you're doing anything particularly wrong. I ran your example locally using the postgres driver (you didn't specify which driver you are using), and it worked just fine - my guess is that there's some information missing here. Things to make sure of:

    • Check that dbMapper.AddTableWithName(Post{}, "posts") got called for the table before attempting to use it. The error you refer to is normally returned when AddTableWithName was not called.
    • Check that the table actually exists in your database, and that you're connecting to the correct database with (something like) sql.Open("postgres", "user=postgres dbname=test")
    • When instantiating Gorp, make sure you're using the right dialect: dbMapper := &gorp.DbMap{Db: db, Dialect: gorp.PostgresDialect{}} in the case of Postgres
    • This could be related to an older version of Gorp - it's been a couple of months since this question was asked, upgrading now might resolve the issue.

    Other than that I think we'll need more information to get to the bottom of this one.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 组策略中的计算机配置策略无法下发
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)