1 回答

TA貢獻1906條經驗 獲得超10個贊
BeforeCreate接口簽名不正確應該是BeforeCreate(*gorm.DB) error
func (p *Post) BeforeCreate(tx *gorm.DB) (err error) {
p.Status = "todo"
return nil
}
另一種方法是添加default-values到 post 結構
type Post struct {
Id uint `json:"ID"`
Name string `json:"Name"`
Message string `gorm:"type:text; index" json:"Message"`
Status string `gorm:"type:varchar(255); index; default: todo" json:"Status"`
Desc string `gorm:"type:text; index" json:"Desc"`
}
輸出:
db.Create(&Post{}) // INSERT INTO `posts` (`name`,`message`,`status`,`desc`) VALUES ("","","todo","") RETURNING `id`
- 1 回答
- 0 關注
- 98 瀏覽
添加回答
舉報