dsdvr06648 2017-03-06 22:58
浏览 291
已采纳

已注册beego模型,但未找到

I'm trying to write my first beego web app and I'm trying to register some models, i register them in models/model.go's init() function, but when I run the command bee run, I get the following error: no Model found, need register your model

main.go:

package main
import (
   "fmt"
    _ "test_blog/routers"
   "time"

   _ "github.com/lib/pq"

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

func init() {
    orm.RegisterDriver("postgres", orm.DRPostgres)

    maxIdle := 30
    maxConn := 30
    orm.RegisterDataBase(
        "default",
        "postgres", 
        "postgres://user:password@localhost/test_db", maxIdle, maxConn
    )

    orm.DefaultTimeLoc = time.UTC
}

func main() {
    // Database alias.
    name := "default"

    // Drop table and re-create.
    force := false

    // Print log.
    verbose := false

    // Error.
    err := orm.RunSyncdb(name, force, verbose)
    if err != nil {
        fmt.Println(err)
    }

    beego.Run()
}

Note: force & verbose both were set to true before running bee run for the first time.

models.go:

package main

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

type User struct {
    Name  string
    Posts []*Post `orm:"reverse(many)"`
}

type Post struct {
    Title   string    `orm:"size(50)"`
    Text    string    `orm:"size(4000)"`
    Created time.Time `orm:"auto_now_add;type(datetime)"`
    Updated time.Time `orm:"auto_now;type(datetime)"`
    Author  *User     `orm:"rel(fk)"`
}

func init() {
    orm.RegisterModel(new(User), new(Post))
}
  • 写回答

1条回答 默认 最新

  • dongwei3120 2017-03-07 02:14
    关注

    try this:

    1. in models.go, change package main to package models
    2. in main.go, add import _ "test_blog/models"
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器