Как обновить запись в mongodb таким образом, чтобы порядок был таким же - PullRequest
0 голосов
/ 13 сентября 2018

У меня около 200 записей в mongodb.Эти записи основаны на информации о людях с информацией, которую я упомянул, в поле order, которое при получении записей превышает количество записей на основе того порядка, предположим, что есть пример ниже: -

{
  "_id":1,
  "name":"abcde1",
  "lastname": "fkjg1",
  "order":1,
  "address":"street number 1231, New York"
}
{
  "_id":2,
  "name":"abc1",
  "lastname": "fg1",
  "order":2,
  "address":"street number 133, New York"
}    

Как пользователь хочет обновить записи таким образом, чтобы порядок записей был одинаковым, но записи будут обновляться, как показано ниже: -

{
  "_id":2,
  "name":"abc1",
  "lastname": "fg1",
  "order":1,
  "address":"street number 133, New York"
}
{
  "_id":1,
  "name":"abcde1",
  "lastname": "fkjg1",
  "order":2,
  "address":"street number 1231, New York"
}  

В приведенных выше записяхЯ обновлю записи так, что порядок останется таким же, как и в прошлом, но в другом поле будут обновлены.Итак, как мне это сделать с golang, есть функция, которую я использую для обновления: -

func Update(){
   blogId := blog.Id
   blogErr := json.NewDecoder(c.Request.Body).Decode(&blog)
   exists, _ := models.GetSingleBlogByID(blogId)
   if exists == nil{
      fmt.Println("There is no record")
      return
   }else{
       if err := models.UpdateBlogById(blogId, blog); err == nil {
            exists, _ := models.GetSingleBlogByID(blogId)
            fmt.Println("Updated Success")
            return
       }else{
           fmt.Println("Not Updated")
           return
        }
   }
}

Какие изменения мне нужно сделать в этой функции, чтобы я делал то, что хотел.

...