swift - 核心数据一对一关系

标签 swift core-data

我正在创建核心数据一对一关系。我的一对多关系运行良好。我的一对一不是。 问题是我的公开课。

对于我的一对多关系,我使用数组。我不知道哪一个适用于简单的字符串。

import UIKit
import CoreData

@objc(MeineSuchregionen)
public class MeineSuchregionen: NSManagedObject {
    var detailSuchregion: [DetailSuchregion]? {
        return self.rawDetailSuchregion?.array as? [DetailSuchregion]
    }

    convenience init?(title: String){
        let appDelegate = UIApplication.shared.delegate as? AppDelegate

        guard let context = appDelegate?.persistentContainer.viewContext
            else {
                return nil
        }
        self.init(entity: MeineSuchregionen.entity(), insertInto: context)
        self.titlesuchregion = title
    }
}

所以,当创建一个对象时,它总是存储在数组中。这是一个问题。

最佳答案

一对多关系用一个集合来表示(请用复数形式命名)

@NSManaged public var detailSuchregionen: Set<DetailSuchregion>

一对一关系由标准属性表示

@NSManaged public var detailSuchregion: DetailSuchregion?

关于swift - 核心数据一对一关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57259057/

相关文章:

ios - Swift 3 Array,一次删除多个项目,使用 .remove(at : i)

ios - 当我使用 PFQueryTableViewController 子类时出现 Parse.com 错误 'Method not allowed when Pinning is enabled.'

快速添加可点击的表格 View

core-data - 通过新的 NPrivateQueueConcurrencyType 进行核心数据后台获取

cocoa - CoreData - 获取另一个表中不存在的条目

iphone - 核心数据获取: Sort by relationship count

ios - 当我的应用程序在后台运行时,是否可以在通知上设置 PresentationsOptions?

ios - 仅在铃声/静音开关打开时播放声音

ios - 我可以在 coredata 中存储多少条记录

Swift:无法将类型 'NSManagedObject_' 的值转换为 'dataModel.Entity'