2015-09-24 7 views
5

Böyle biraz benzeyen iki CloudKit veri nesneleri var:CloudKit web hizmetlerini bir referans alanına dayanarak sorgulamak için nasıl kullanabilirim?

Veli Nesne:

{ 
    "records": [ 
     { 
      "recordName": "14102C0A-60F2-4457-AC1C-601BC628BF47-184-000000012D225C57", 
      "recordType": "ParentObject", 
      "fields": { 
       "fsYear": { 
        "value": "2015", 
        "type": "STRING" 
       }, 
       "displayOrder": { 
        "value": 2015221153856287200, 
        "type": "INT64" 
       }, 
       "fjpFSGuidForReference": { 
        "value": "14102C0A-60F2-4457-AC1C-601BC628BF47-184-000000012D225C57", 
        "type": "STRING" 
       }, 
       "fsDateSearch": { 
        "value": "2015221153856287158", 
        "type": "STRING" 
       }, 
      }, 
      "recordChangeTag": "id4w7ivn", 
      "created": { 
       "timestamp": 1439149087571, 
       "userRecordName": "_0d26968032e31bbc72c213037b6cb35d", 
       "deviceID": "A19CD995FDA3093781096AF5D818033A241D65C1BFC3D32EC6C5D6B3B4A9AA6B" 
      }, 
      "modified": { 
       "timestamp": 1439149087571, 
       "userRecordName": "_0d26968032e31bbc72c213037b6cb35d", 
       "deviceID": "A19CD995FDA3093781096AF5D818033A241D65C1BFC3D32EC6C5D6B3B4A9AA6B" 
      } 
     } 
    ], 
    "total": 
} 

Çocuk Nesne:

{ 
    "records": [ 
     { 
      "recordName": "2015221153856287168", 
      "recordType": "ChildObject", 
      "fields": { 
       "District": { 
        "value": "002", 
        "type": "STRING" 
       }, 
       "ZipCode": { 
        "value": "12345", 
        "type": "STRING" 
       }, 
       "InspecReference": { 
        "value": { 
         "recordName": "14102C0A-60F2-4457-AC1C-601BC628BF47-184-000000012D225C57", 
         "action": "NONE", 
         "zoneID": { 
          "zoneName": "_defaultZone" 
         } 
        }, 
        "type": "REFERENCE" 
       }, 
      }, 
      "recordChangeTag": "id4w7lew", 
      "created": { 
       "timestamp": 1439149090856, 
       "userRecordName": "_0d26968032e31bbc72c213037b6cb35d", 
       "deviceID": "A19CD995FDA3093781096AF5D818033A241D65C1BFC3D32EC6C5D6B3B4A9AA6B" 
      }, 
      "modified": { 
       "timestamp": 1439149090856, 
       "userRecordName": "_0d26968032e31bbc72c213037b6cb35d", 
       "deviceID": "A19CD995FDA3093781096AF5D818033A241D65C1BFC3D32EC6C5D6B3B4A9AA6B" 
      } 
     } 
    ], 
    "total": 1 
} 

Ben bir sorgu doğrudan yazmaya çalışıyorum CloudKit web hizmetine erişin ve üst nesnenin referansını temel alarak Alt Nesne döndürün.

{ "UUID": Ben CloudKit aşağıdaki hatayı alıyorum, ancak

{"query":{"recordType":"ChildObject","filterBy":{"fieldName":"InspecReference","fieldValue":{ "value" : "14102C0A-60F2-4457-AC1C-601BC628BF47-184-000000012D225C57", "type" : "string" },"comparator":"EQUALS"}},"zoneID":{"zoneName":"_defaultZone"}} 

:

Testim JSON şuna benzer "33db91f3-b768-4a68-9056 -216ecc033e9e", "serverErrorCode": "BAD_REQUEST", "akıl": "BadRequestException: Ben tahmin ediyorum beklenmeyen girdi"}

Ben Kayıt Alanı Dictionar Sorguda yanlış y. Bununla birlikte, belge bir referans nesnede neye benzemesi gerektiği konusunda net değildir.

cevap

1

Referansın asıl nesnesini yeniden oluşturmanız gerekir. Bu özel durumda, JSON şuna benzer: Ben dokümanlar ilk etapta CKWS ile CKReference nasıl oluşturulacağını yeniden bulamadığı için

{ 
    "query": { 
     "recordType": "ChildObject", 
     "filterBy": { 
      "fieldName": "InspecReference", 
      "fieldValue": { 
       "value": { 
        "recordName": "14102C0A-60F2-4457-AC1C-601BC628BF47-184-000000012D225C57", 
        "action": "NONE" 
       }, 
       "type": "REFERENCE" 
      }, 
      "comparator": "EQUALS" 
     } 
    }, 
    "zoneID": { 
     "zoneName": "_defaultZone" 
    } 
} 
+0

Bu benim için çok yararlı oldu. Teşekkürler! –

İlgili konular