0

Couldn't insert new article. Reason: %!(EXTRA sqlite3.Error=no such table: articles尝试将文章添加到表格文章时出现此错误。

\ models.go

package models

type Article struct {
    Id     int    `form:"-"`
    Name   string `form:"name,text,name:" valid:"MinSize(5);MaxSize(20)"`
    Client string `form:"client,text,client:"`
    Url    string `form:"url,text,url:"`
}

func (a *Article) TableName() string {
    return "articles"
}

\ 我的添加功能的一部分

if err == orm.ErrNoRows || err == orm.ErrMissPK {
     beego.Debug("No article found matching details supplied. Attempting to insert article: ", article)
     id, err := o.Insert(&article)
     if err == nil {
         msg := fmt.Sprintf("Article inserted with id:", id)
         beego.Debug(msg)
         flash.Notice(msg)
         flash.Store(&manage.Controller)
      } else {
         msg := fmt.Sprintf("Couldn't insert new article. Reason: ", err)
         beego.Debug(msg)
         flash.Error(msg)
         flash.Store(&manage.Controller)
      }
} else {
     beego.Debug("Article found matching details supplied. Cannot insert")
}

请协助。我不知道做错了什么。

4

1 回答 1

0

我得到了答案,我需要同步我的数据库(类似于 Django >> python manage.py makemigrations/migrate)。所以我在 main.go 中编辑了我的 main 函数:

func main() {
    err := orm.RunSyncdb("default", false, false)
    if err != nil {
        beego.Error(err)
    }
    beego.Run()
}

这对我有用。

于 2015-08-21T11:41:48.027 回答