Swift 中的 Core Data 字符串没有名为 setValue 的成员

String does not have a member named setValue for Core Data in Swift

我已经像这样在 coreData 中的一个实体上完成了 NSFetchRequest

var request = NSFetchRequest(entityName: "Users")
request.returnsObjectsAsFaults = false
var results = context.executeFetchRequest(request, error: &error)

我已经进行了迭代,所以我可以像这样访问 valueForKey 对象:

if results!.count > 0 {

            for result: AnyObject in results! {
                if let rStatus = result.valueForKey("relationshipStatus") as? String{
                    rStatus.setValue(self.RelationshipStatus.text, forKey: "relationshipStatus") //GETTING AN ERROR HERE SAYING STRING DOES NOT HAVE A MEMBER NAMED 'SET VALUE'
                    println("Current User updated status to core data")
                    context.save(&self.error)
                }
            }
        }

尽管我收到一条错误消息 'String does not have a member named setValue'。因为我只想设置特定的键,所以有什么办法解决这个问题吗?

提前致谢

您收到错误消息是因为您尝试调用 String 上的方法,但该方法不存在。相反,您应该在 result:

上调用它
result.setValue(self.RelationshipStatus.text, forKey: "relationshipStatus")