Предполагая, что вы хотите достичь этого с помощью отражения: прежде всего, вы должны передать указатель на структуру. Теперь вы передаете копию структуры, поэтому любые изменения, сделанные в update
, будут выполнены для копии, а не для экземпляра, в который вы были переданы. Затем вы можете найти поле UpdatedAt
в переданном интерфейсе,и установите его.
Тем не менее, это, вероятно, не лучший способ сделать это. Другой способ сделать это без отражения:
func update(in *Model) {
in.UpdatedAt = time.Now()
}
func main() {
apple := &Fruit{}
update(&apple.Model)
}
Или:
func (in *Model) update() {
in.UpdatedAt = time.Now()
}
func main() {
apple := &Fruit{}
apple.update()
}