Kinvey: объект не сохраняется из-за ошибки: невозможно сопоставить «X», несуществующее свойство

Я часть группы, переезжающей из Парса и проверяющей Кинви. Однако я не могу получить объекты для сохранения. Я получаю сообщение об ошибке:

ошибка: Error Domain = KCSAppDataErrorDomain Code = 60102 «У объекта нет свойства «NumberOfPlayers», как указано в hostToKinveyPropertyMapping» UserInfo = {NSLocalizedRecoverySuggestion = Проверьте hostToKinveyPropertyMapping на наличие опечаток и ошибок. hostToKinveyPropertyMapping, NSLocalizedFailureReason=Невозможно сопоставить «NumberOfPlayers», несуществующее свойство}

Я следил за руководством на их веб-сайте здесь: http://devcenter.kinvey.com/ios/guides/datastore#create

Мой код:

class Event: NSObject {
var objectId:String?
var Sport:Int?
var NumberOfPlayers:Int?
var SkillLevel:Int?
var Date:NSDate?
var Time:NSDate?
var Competitive:NSNumber?

override func hostToKinveyPropertyMapping() -> [NSObject : AnyObject]! {
    return [
        "objectId" : KCSEntityKeyId,
        "Sport" : "Sport",
        "NumberOfPlayers" : "NumberOfPlayers",
        "SkillLevel" : "SkillLevel",
        "Date" : "Date",
        "Time" : "Time",
        "Competitive" : "Competitive",
    ]
}
}

И экономия:

let event = Event()
    event.Sport = 0
    event.NumberOfPlayers = playerQuantity
    event.SkillLevel = skillLevel
    event.Date = date
    event.Time = time
    event.Competitive = competitive

    let collection = KCSCollection(fromString: "Event", ofClass: Event.self)
    let store = KCSAppdataStore(collection: collection, options: nil)

//        let store = KCSAppdataStore.storeWithOptions([
//            KCSStoreKeyCollectionName : "Event",
//            KCSStoreKeyCollectionTemplateClass : Event.self
//            ])

    store.saveObject(event, withCompletionBlock: { (objects, error) -> Void in
        if error != nil { print("error : \(error)"); return }
        print("saved objects")
        }, withProgressBlock: nil)

Ни один из способов создания DataStore не работал. Оба возвращают одну и ту же ошибку.

Я также проверил правильность AppId и AppSecret. Я могу sign up пользователей и login хорошо, я просто не могу сохранить данные.

Любые идеи?


person Sam    schedule 29.02.2016    source источник
comment
ИСПРАВЛЕНО: свойства не могут быть Int? Тип. Вместо этого они должны быть NSNumbers   -  person Sam    schedule 01.03.2016


Ответы (1)


Любые числовые типы должны классифицироваться как NSNumbers вместо Ints.

person Sam    schedule 02.03.2016