: I do not zamanZaten benim kod şu anda DynamoDB benim tabloya kaydedilir bir öğenin bir dizi özellik değer artırma ile mücadele ediyorum
AWSDynamoDBUpdateItemInput *updateItemInput = [AWSDynamoDBUpdateItemInput new];
updateItemInput.tableName = @"Table";
updateItemInput.key= @{
@"KeyPropertyName":@"KeyValue"
};
updateItemInput.updateExpression = @"SET(counter = counter + :val)";
updateItemInput.expressionAttributeValues [email protected]{
@":val":@1
};
AWSDynamoDB *dynamoDB = [AWSDynamoDB defaultDynamoDB];
[[dynamoDB updateItem:updateItemInput]
continueWithBlock:^id(AWSTask *task) {
if (task.error) {
NSLog(@"The request failed. Error: [%@]", task.error);
}
if (task.exception) {
NSLog(@"The request failed. Exception: [%@]", task.exception);
}
if (task.result) {
//Do something with result.
}
return nil;
}];
Benim uygulamanın her zaman çöküyor updateExpression ve expressionAttributeValues hakkında yorum yapın. Anahtarımı iletmek için AWSDynamoDBAttributeValue örneğini oluşturduğumda, öğe türümün boş bir örneğini oluşturduğumda ve tuhaf sonuçlar aldığımda bloğa erişebilirim. Baska öneri? Ayrıca updateExpression'umu yanlış yazıyor muyum?
Ayrıca, başka bir nesnede dizi/liste ve sözlük/harita özelliklerinde öğelerin güncellenmesini ve silinmesini de ekleyeceğim. Bu nasıl farklı olur?
nasıl kilitleniyor? Aldığınız tam hata mesajı nedir? –
ve evet, güncelleme ifadesi parantez olmadan olmalı ve özellik ismini de –
parametrelendirmeniz gerekebilir *** Yakalanmamış istisna 'NSInvalidArgumentException' nedeniyle sonlandırma uygulaması, nedeni: '+ [__ NSCFNumber JSONKeyPathsByPropertyKey]: tanınmayan seçici 0x113d10368 ' – csweeney285