我已经非常成功地使用了CK服务,但我对如何创建CKReference感到困惑。
我看过这里的文档是参考词典,但不能使这样的字典工作。
My生成以下操作字典:
{"operations":[
{"operationType": "create",
"record": { "recordType": "Works",
"fields": {
"type":{"value":"Painting"},
"title": {"value":"test"},
"date": {"value":"10/29/1965"},
"height": {"value":"21"},
"length": {"value":"21"},
"width": {"value":"21"},
"runningTime": {"value":""},
"materials": {"value":"test"},
"description":{"value":"test"},
"saleStatus": {"value":"yes"},
"tos":{"value":"yes"},
"artist": {"value":"Peter Wiley"},
"artistRecordName":{"value":"286CB3BF-69CC-4DD3-9233-CC80E5FA95D4"},
"artistRecordRef": {
"recordName": {"value":"286CB3BF-69CC-4DD3-9233-CC80E5FA95D4"},
"zoneID":{"zoneName": {"value":"_defaultZone"}},
"action": {"value":"NONE"}
},
"subject":{"value":""},
"metaType":{"value":"Fine Art"},
"userRecordName":{"value":"30C54AD8-3701-428C-99B7-0393DD2DAB45"},
"userRole":{"value":"Artist"},
"status":{"value":"P"}
}
} }
]}此请求返回错误:
BAD_REQUEST“1=> string(62) "BadRequestException:行26处的意外输入,列:3
如果我删除了"artistRecordRef“,请求就会正常工作。
我相信这个答案对一个更有经验的人来说是显而易见的。有人能看出怎么回事吗?
发布于 2017-07-21 12:01:23
好的,我在这里找到了答案,但是已经发布给其他可能有问题的人,因为答案不容易找到。
这就是起作用的地方:
"artistRecordRef": {"value": {
"recordName": "'.$artistRecordName.'",
"action": "NONE"
}
},参考字典必须作为一个值传递。我没有明白这一点,苹果文档中的例子也没有很好地记录下来(至少在我能找到的文档中是这样的)。
请参阅:How can I use CloudKit web services to query based on a reference field?
https://stackoverflow.com/questions/45237057
复制相似问题