2016-05-08 6 views
0

Я пытаюсь сделать что-то, что должно быть довольно простым, но я явно делаю что-то неправильно. Любая помощь будет оценена по достоинству.

Я знаю, что _id документа, и я просто хочу, чтобы убедиться, что это available_uses является $gte 1

Простой Образец документа:

{ 
"_id" : ObjectId("572f4d6f6d210e5c2d60cc41"), 
"invite_data" : "something useful here", 
"available_uses" : NumberInt(25), 
} 

Я попытался следующий ОСБК но он не работает. Я могу скомпилировать без каких-либо ошибок, но когда я его запускаю, приложение умирает, как только строка query установлена ​​так, что в этой структуре что-то не так. Нет ошибок, просто выйдет приложение.

query = bson_new(); 
bson_oid_t oid; 
bson_oid_init_from_string (&oid, invite_id); 

query = BCON_NEW ("_id", BCON_OID(&oid), 
    "{", 
     "available_uses", 
      "{", 
       "$gte", BCON_INT32 (1) 
      "}", 
    "}"); 

// Find the document 
cursor = mongoc_collection_find (collection, MONGOC_QUERY_NONE, 0, 0, 0, query, NULL, NULL); 

ответ

0

Слишком много { & }. Еще раз грустная проблема заключается в том, что онлайн-документация указывает на неправильное направление.

В любом случае правильные коды:

query = BCON_NEW ("_id", BCON_OID(&oid), 
    "available_uses", 
     "{", 
      "$gt", BCON_INT32 (1), 
      "}"); 

 Смежные вопросы

  • Нет связанных вопросов^_^