2014-06-17 60 views
1

我需要一些CouchDB iOS項目的幫助。CouchDB和iOS

我正在使用Apache CouchDB服務器和couchbase-lite iOS框架。

在我的CouchDB上我有一個模板文檔。

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

我的目標是僅將iPad與此模板文檔同步以獲取我的應用程序所需的最新數據。 但是,當我在iPad上輸入一些數據時,我希望這些數據只能推送到couchBase服務器。

我該如何「告訴」我的應用程序只同步一個文件而不是整個數據庫與我的服務器,並最終如何「告訴」我的應用程序只推送從用戶端輸入的數據?

更重要的是,我的服務器上是否需要兩個數據庫?一個用於模板,另一個用於用戶輸入數據? 如果是,那麼我只需要知道我只能推送我的數據。 需要指導。謝謝。

回答

1

這是我如何解決這個問題:

  • 我傾向於一個「上次更新」日期添加到我的所有文件,並存儲這意味着他們將按照時間順序進行排序的格式(時代或者yyymmddhhmmss)都可以。
  • 創建一個使用更新時間作爲日期的視圖。
  • 在您的客戶端上,存儲自上次更新以來的時間。
  • 更新時,使用設置爲上次更新日期的startkey參數訪問視圖。
  • 然後,您可以使用'include-docs = true'在查詢視圖時獲取文檔。
  • 我傾向於使用'include-docs = false',因爲它意味着大量文檔被更新時,我在單個查詢中傳輸更少的數據。然後,我直接訪問視圖返回的每個文檔ID。