func (e *Evaluation) AfterCreate(tx *gorm.DB) (err error) {
fmt.Print("%v\n", e)
err = tx.Model(&Course{}).Where("course_id = ?", e.CourseID).Update("eva_count", gorm.Expr("eva_count + ?", 1)).Error
return
}
func (e *Evaluation) BeforeDelete(tx *gorm.DB) (err error) {
fmt.Printf("%v\n", e)
err = tx.Model(&Course{}).Where("course_id = ?", e.CourseID).Update("eva_count", gorm.Expr("eva_count + ?", 1)).Error
return
}
DeleteEvaluation удалить запись оценки
func (s *EvaluationService) DeleteEvaluation(id string) (err error) {
err = s.DB.
Where("id = ?", id).
Delete(&models.Evaluation{}).
Error
return
}
в AfterCreate будет отображаться
&{{c19670cd-6b0c-4766-965d-79476d8aabc0 2020-04-09 00:54:03.072962 +0800 CST m=+107.508499332} 0081A004 9ca228df-08f8-4721-a80e-d8efd3f3194e 0081A004 5 0081A00
, но в BeforeDelete я не могу получить значение оценки
&{{00000000-0000-0000-0000-000000000000 0001-01-01 00:00:00 +0000 UTC} 00000000-0000-0000-0000-000000000000 0 false}