无法插入新文章。原因:%!(EXTRA sqlite3.Error=no such table: articles) Beego

Couldn't insert new article. Reason: %!(EXTRA sqlite3.Error=no such table: articles) Beego

尝试将文章添加到 table 篇文章时出现此错误 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")
}

请协助。我不知道哪里做错了。

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

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

这对我有用。