Core data 我如何循环使用一组核心数据

Core data 我如何循环使用一组核心数据,core-data,swift2,Core Data,Swift2,我有一个用户实体和一个爱好实体,以及与多个用户的关系,其中一个用户可以有多个爱好。我正在将用户添加到这样的爱好中,`@IBAction func addHobby(发件人:AnyObject){ 但是我想弄清楚如何循环通过用户实体对象来查看某个用户有什么爱好。我目前正在使用这个,但它不起作用 @IBAction func printUser(sender: AnyObject) { print(curUser!.hobby! as NSSet) } 我在控制台中看到: Relati

我有一个用户实体和一个爱好实体,以及与多个用户的关系,其中一个用户可以有多个爱好。我正在将用户添加到这样的爱好中,`@IBAction func addHobby(发件人:AnyObject){

但是我想弄清楚如何循环通过用户实体对象来查看某个用户有什么爱好。我目前正在使用这个,但它不起作用

@IBAction func printUser(sender: AnyObject) {

    print(curUser!.hobby! as NSSet)

}
我在控制台中看到:

Relationship 'hobby' fault on managed object (0x7fef13674e10) <Core_Data_Demo.Users: 0x7fef13674e10> (entity: Users; id: 0xd000000000040000 <x-coredata://5E62A797-4124-4816-8AC0-32C5E723F830/Users/p1> ; data: {
hobby = "<relationship fault: 0x7fef134515c0 'hobby'>";
password = test;
username = free;
受管对象(0x7fef13674e10)上的关系“hobby”错误(实体:用户;id:0xd000000000040000;数据:{ 爱好=”; 密码=测试; 用户名=免费; })


任何帮助都会很棒,我被卡住了。

在您访问之前,关系将是一个错误。这就是您在打印中看到的内容。您需要查看关系以了解其中的内容:

for item in curUser.hobby {
    print(item)
}
这将导致访问该关系,从而实现该关系并为您提供一组要漫游的对象

请注意,即使每个爱好都是错误的,因此您可能希望触摸爱好上的属性,而不是打印整个对象:

for item in curUser.hobby {
    print(item.name)
}
举个例子


我建议大家读一读

这本书,谢谢!我会读的,因为它让我有点困惑。
for item in curUser.hobby {
    print(item.name)
}