0

私はこれを広範囲に研究しました。先日Parseのニュースを聞いて、BaaSにKinveyをいじってみた。オブジェクトを保存しようとしていますが、KCSPersistable に関連するエラーを受け取りました。

    class Event : NSObject{
      var entityId: String? //Kinvey entity _id
      var name: String?
      var date: NSDate?
      var location: String?
      var metadata: KCSMetadata? //Kinvey metadata, optional
     }



    func hostToKinveyPropertyMapping() -> [NSObject : AnyObject]! {
       return [
            "entityId" : KCSEntityKeyId, //the required _id field
            "name" : "name",
            "date" : "date",
            "location" : "location",
            "metadata" : KCSEntityKeyMetadata //optional _metadata field
             ]
      }

Swift は、スーパークラスのために NSObject に対して冗長と呼びます。KCSPersistable 宣言を削除すると、コードは正常にビルドされますが、次のエラーが表示されます。

    'Object "<KinveyPractive.Event: 0x7fed18d484c0>" of type "KinveyPractive.Event" does not implement 'hostToKinveyPropertyMapping', a required 'KCSPersistable' method for saving the object to the backend'

問題のループに陥っています。KCSPersistable を削除すると、Xcode が要求します。しかし、そのままにしておくと、Xcode がコンパイルされません。

4

1 に答える 1