第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何查詢GORM模型

如何查詢GORM模型

Go
守著星空守著你 2021-03-30 17:14:32
我試圖查詢給定模型的數(shù)據(jù)庫,但得到一個空白模型作為響應(yīng)。我正在使用Revel框架和GORM創(chuàng)建模型并查詢數(shù)據(jù)庫。app.gopackage controllersimport (    "github.com/revel/revel"    "route/to/models")type App struct {    *revel.Controller    GormController}func (c App) Index() revel.Result {    accounts := models.Account{}    account := c.DB.Find(accounts)    return c.RenderJSON(account)}gorm.gopackage controllersimport (    _ "github.com/jinzhu/gorm/dialects/postgres"    "github.com/jinzhu/gorm"    r "github.com/revel/revel")type GormController struct {    *r.Controller    DB *gorm.DB}// it can be used for jobsvar Gdb *gorm.DB// init dbfunc InitDB() {    var err error    // open db    Gdb, err = gorm.Open("postgres", "host=hostname port=5432 user=postgres password=password dbname=some_db_name sslmode=disable")    Gdb.LogMode(true) // Print SQL statements    if err != nil {        r.ERROR.Println("FATAL", err)        panic(err)    }}func (c *GormController) SetDB() r.Result {    c.DB = Gdb    return nil}不確定我要去哪里錯,最終我想從帳戶中選擇*;注意:我可以運(yùn)行遷移并在Index()函數(shù)中創(chuàng)建,并且可以正確處理數(shù)據(jù)。
查看完整描述

1 回答

?
楊魅力

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超6個贊

從數(shù)據(jù)庫填充結(jié)構(gòu)時,您需要傳遞一個指針,以使GORM能夠填充它。否則,它是按值傳遞的,GORM會填充副本,而您永遠(yuǎn)不會看到它。


而且,如果要獲取所有帳戶,則應(yīng)將指針傳遞給一部分帳戶。關(guān)于指針與值,切片與結(jié)構(gòu)的不同之處在于,即使在傳遞值的情況下,仍可以修改基礎(chǔ)數(shù)組,但是在函數(shù)之外,即使填充數(shù)組,切片的長度(和容量)也不會改變在函數(shù)中,因此如果沒有指針,它仍然不會表現(xiàn)出預(yù)期的效果。


然后您應(yīng)該檢查Error:


accounts := make([]models.Account, 0)

if err := c.DB.Find(&accounts).Error; err != nil {

     if gorm.IsRecordNotFoundError(err) {

          // handle not found

     } else {

          // print/log/return error

     }

     return

}


// do something with accounts


查看完整回答
反對 回復(fù) 2021-04-19
  • 1 回答
  • 0 關(guān)注
  • 306 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號