我使用这个库https://github.com/go-pg/pg。
我有一个简单的模型。
type ChatAdmin struct {
Id int64
TgId int
CreatedAt time.Time `pg:"default:now()"`
}
使用此代码,我试图将一个实例插入到表中。
func (m Model) createChatAdminByTgUserID(tgUserId int) (ChatAdmin, error) {
admin := new(ChatAdmin)
admin.TgId = tgUserId
_, err := db.Model(admin).SelectOrInsert(admin)
return *admin, err
}
插入后,我在表中看到 created_at == NULL 的行。为什么不default:now()
工作?
我试图设置它,sql:"default:now()"
但它没有帮助。
我的 PostgreSQL 版本是:在 Ubuntu 上运行的 11.66
这是创建表日志:
"chat_admins" ("id" bigserial, "tg_id" bigint, "created_at" timestamptz NOT NULL DEFAULT now(), PRIMARY KEY ("id"))
这是插入后的heroku数据剪辑: