2014-06-17 4 views
1

Мне нужна помощь в проекте CouchDB iOS.CouchDB и iOS

Я использую Apache CouchDB Server и платформу iOS на основе couchbase-lite.

На моем CouchDB у меня есть документ-шаблон.

- CouchDB Server 
    - database 
    - template 
    - document 1 
    - document 2 
    - ... 

Моя цель - только синхронизировать мой iPad с этим документом шаблона, чтобы получить последние данные, которые мне нужны. Но когда я ввожу некоторые данные на свой iPad, я хочу, чтобы эти данные были перенесены только на сервер couchBase.

Как я могу «рассказать» моему приложению синхронизировать только один файл, а не всю базу данных с моим сервером, и в конце, как я могу «сказать» моему приложению, чтобы только толкать данные, которые вводятся с пользовательской стороны?

Что еще более важно, мне нужны две базы данных на моем сервере? Один для шаблона и второй для пользовательских входных данных? Если ДА, то мне просто нужно знать, как я могу только подталкивать свои данные. Руководство необходимо. Благодарю.

ответ

1

Это, как я решить эту проблему:

  • Я склонен добавить «последнее обновление» даты всех моих документов, и хранить это в таком формате, который означает, что они будут отсортированы в порядке времени (эпоха или yyymmddhhmmss).
  • Создайте представление, в котором используется время обновления в качестве даты.
  • На вашем клиенте сохраните время с момента последнего обновления.
  • При обновлении доступ к представлению с параметром startkey установлен на последнюю дату обновления.
  • Вы можете либо использовать 'include-docs = true', чтобы получить документы при запросе представления.
  • Я обычно использую 'include-docs = false', хотя, поскольку это означает, что когда много документов было обновлено, я переношу меньше данных в один запрос. Затем я просто получаю доступ к каждому идентификатору документа, который возвращает представление.
Смежные вопросы