2017-09-25 27 views
0

我使用XCode9和Swift4开始了一个新项目。我复制了基本的示例代码保存模型DynamoDB,但我不断收到以下错误:无法使用Swift将模型保存到DynamoDB 4

Amazon DynamoDB Save Error: Error Domain=com.amazonaws.AWSCognitoIdentityErrorDomain Code=0 "(null)" UserInfo={__type=com.amazon.coral.validate#ValidationException, message=Supplied AttributeValue is empty, must contain exactly one of the supported datatypes}

我的项目只包含所提供的示例代码,没有别的,我怎么能得到我的模型保存?

回答

4

的变通办法,直到雨燕4支持正常是把

@objcMembers 

类声明的模型类之前,因为这个bug报告中说明。

https://github.com/aws/aws-sdk-ios/issues/750

这个固定的问题,对我来说,无需降级到斯威夫特3.

+0

OMG。感谢你在被困3个小时后结束了我的痛苦。 – George

+0

这显然是更好的答案:) – akiraspeirs

+0

omg,我花了3天的时间来解决这个问题,重新编码和重新创建aws服务,但仍然无法正常工作。这可能会帮助我很多..谢谢:D –

0

DynamoDB似乎还不支持Swift4。我下载了AWS提供的示例项目(MySampleApp),并将目标的编译设置Swift Language Version设置为Swift 4.0,稍作修改以便编译,并且我得到了相同的错误。

在示例应用程序和我自己的项目中都将Swift Language Version减少为Swift 3.2解决了问题。