Как получить целочисленный ObjectID в mongodb - PullRequest
0 голосов
/ 28 февраля 2020

Как получить целочисленный идентификатор, потому что я сохранил идентификатор как 1,2,3,4, ..

имеет какой-либо метод для извлечения записи, используя идентификатор как int не шестнадцатеричным

// Grab id
id := c.Params.ByName("id")

//Verify id is ObjectId, otherwise fail
if !bson.IsObjectIdHex(id) {
    checkErrTypeTwo("ID is not a bson.ObjectId", "404", c)
    return
}
// Grab id
oid := bson.ObjectIdHex(id)

// Stub user
u := models.User{}
err := uc.session.DB(DB_NAME).C(DB_COLLECTION).FindId(oid).One(&u)

1 Ответ

0 голосов
/ 28 февраля 2020

Если я правильно понимаю, вы ищете запрос с целым числом id , который вы сохранили вместо автоматически сгенерированного ObjectID ( _id )

// Assumed imports
import (
  "log"
  "go.mongodb.org/mongo-driver/mongo"
  "go.mongodb.org/mongo-driver/bson"
)

// some func scope

var id int64
// init for id
u := models.User{}
var db *mongo.Database = uc.session.Db(DB_NAME)
if err := db.Collection(DB_COLLECTION).FindOne(context.TODO(), bson.M{
  "id": id,
}).Decode(&u); err != nil {
  log.Fatal(err.Error())
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...