Я новичок в Couchbase Android. Я использую Couchbase Lite v1.1.0 для сохранения локальных данных. Но я сталкиваюсь с некоторыми проблемами, когда это нужно сделать. Я googled, прочитал документ в Couchbase Lite и нашел все сообщения в stackoverflow, но я до сих пор не понимаю, с чем я сталкиваюсь.Не удается получить пользовательский идентификатор документа в Couchbase Lite - Android
Вот мой сниппают демо-код, чтобы сохранить мои данные в базе данных с пользовательским идентификатором документа является индексом I:
cbManager=new Manager(new AndroidContext(context),
Manager.DEFAULT_OPTIONS);
cbDatabase=cbManager.getDatabase("my_db");
.....
for(int i=0; i<10; i++){
Document document=cbDatabase.getDocument(String.valueOf(i)); // This line I custom document with id i
Map<String,Object> docContent= new HashMap<String, Object>();
docContent.put("title", title);
docContent.put("firstName", firstName);
docContent.put("lastName", lastName);
try{
document.putProperties(docContent);
} catch (CouchbaseLiteException e){
Log.e(TAG, "Cannot write document to database", e);
}
}
И получить все ДАННЫЕ от Couchbase Lite:
Query allDocumentsQuery= cbDatabase.createAllDocumentsQuery();
QueryEnumerator queryResult=allDocumentsQuery.run();
for (Iterator<QueryRow> it=queryResult;it.hasNext();){
QueryRow row=it.next();
Document doc=row.getDocument();
String id=doc.getId(); // I get the id in here but the result is the default id (UUID):(
}
Так , У меня есть два вопроса:
Когда я запрашиваю все d ocuments из базы данных (couchbase lite), возвращается документ с идентификатором по умолчанию (UUID), почему он не возвращает мой пользовательский идентификатор?
(): Сохранение всего документа в базе данных, в котором пользовательские идентификаторы: 1, 2, 3 ...... 9. Но результат всех документов при получении из базы данных имеет идентификаторы по умолчанию: UUID, UUID ,. .., UUID.)
- Я не понимаю Почему я сохраняю документ в порядке, но возврат всех документов не в порядке? (потому что эта причина делает меня пользовательским идентификатором документа)
Просьба дать мне несколько советов или посоветуйте мне, как это сделать. Большое спасибо всем вам.
Вы смогли получить документы, созданные с пользовательской ID? Я имею в виду, что вы должны выполнить, например: Документ document = database.getDocument ("custom_id"); – sweetiewill
Упс, я стараюсь, и я не могу. Зачем? – bkit4u
Это означает, что ваш документ не был сохранен с указанным вами идентификатором. Он был сохранен сгенерированным uuid. –