diff --git a/interface.go b/interface.go index 593777b..ec8ddf3 100644 --- a/interface.go +++ b/interface.go @@ -41,8 +41,10 @@ func GetCollectionName(m ModelInterface) string { // PrepareInsert creates new bson id and insert time func (m *Model) PrepareInsert() { - id := bson.NewObjectId() - m.ID = &id + if m.ID == nil { + id := bson.NewObjectId() + m.ID = &id + } now := time.Now() m.InsertTime = &now m.UpdateTime = &now