1、慎用CreatedAt、UpdatedAt和DeletedAt字段
要瘋了。數據庫的字段要避開這created_at、updated_at、deleted_at字段,改爲created_time、updated_time和deleted_time。
2、查詢的時候,如果沒有查到記錄也算一個err,需要在我們正常理解的err之前判斷,類似如下的順序:
err := db.
Table(GroupChatTableName).
Select("gc_status").
Where(map[string]interface{}{
"gc_id": gid,
}).
Find(&group).
Error
// 這個要在err前面,因爲在gorm裏找不到記錄也算錯誤
if db.RecordNotFound() {
log.Errorf("query group chat not found")
return 0, nil
}
if err != nil {
log.Errorf("query group chat info by gid failed, err: %v", err)
return 0, err
}