beego利用数据库表名动态创建models中的对象

这是在models中定义的一个struct,beego中的数据库名称为test_books_type

package models

import (
    "github.com/astaxie/beego/orm"
)

type Books_type struct {
    Guid      string `orm:"pk"`
    Top_guid  string
    Type_name string
}

func init() {
    orm.RegisterModelWithPrefix("test_", new(Books_type))
}

现在的情况是我有多个models文件,见了很多struct,每个struct多对应一张数据库表,前缀为test_,我怎样才能根据得到的表的名字来创建对应的model??举例,我获得了表名为test_movie_type,我怎样创建new(models.Movie_type),求指教!

阅读 8.2k
3 个回答

大可不必这样,既然知道了表名,直接利用原生语句插入值即可,还是太依赖经验和框架了,应该灵活处理问题

不需要管表名,直接 new(struct的名字) 就可以了。
使用的时候,字段也是使用struct中的字段,而不是实际表中的字段。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题