Как проверить время в запросе mongodb с помощью golang - PullRequest
0 голосов
/ 13 октября 2018

Здесь я создаю запрос для получения бронирования из базы данных и делаю запрос для него, но в соответствии с условиями я хочу создать запрос и задать условие для поля времени, которое, если время не равнои меньше нуля, тогда он присоединится к условию запроса, в противном случае нет.Ниже приводится условие, которое я использую, и я хочу проверить время: -

mongoSession := ConnectDb()
defer mongoSession.Close()
sessionCopy := mongoSession.Copy()
defer sessionCopy.Close()
getCollection := sessionCopy.DB(Database).C(Collection) 
condition := bson.M{
    "status":           1,
    "category": bson.M{"$in": services},
    "method":   bson.M{"$in": value},
    "date":     date,
    "location": loc,
    "end_time":         bson.M{"$lte": currTime},
} 

Я хочу проверить end_time следующим образом: -

if currTime > 0{
   "end_time":bson.M{"$lte": currTime},
}
// Something like that

Может кто-нибудь сказатьмне, как я это выполню?

1 Ответ

0 голосов
/ 13 октября 2018

Вы используете для него карту следующим образом: -

condition := make(map[string]interface{})
condition["status"] = 1
condition["category"] = bson.M{"$in": services}
condition["method"] = bson.M{"$in": value}
condition["date"] = date
condition["location"] = loc
if currTime > 0 {
    condition["end_time"] = bson.M{"$lte": currTime}
}

и передаете условие в запросе

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...