【问题标题】:Fetching a particular record from a Core Data entity从核心数据实体中获取特定记录
【发布时间】:2011-06-27 18:58:03
【问题描述】:

如何选择要获取的核心数据记录?

我有一个实体“信用卡”,并且我在该实体中存储了十张实际信用卡。怎么说“嘿,我想取那张卡?”

【问题讨论】:

    标签: objective-c ios cocoa-touch core-data


    【解决方案1】:

    您创建一个 NSFetchRequest 并使用一个谓词来标识您想要的信用卡(例如,id = 3cardHolderName = "JOE SMITH"),然后让 NSManagedObjectContext 执行获取请求,返回结果集(其中将包含一张卡你想要)。

    【讨论】:

    • 您可以通过编程方式执行此操作,也可以在编辑器中创建 Fetch Request。
    • 谢谢!谓词,这就是我要找的词!编辑:你知道是否有一种方法可以自动增加一个整数来创建你上面提到的那个 ID 号?
    • @James Martinez:如果你有新问题,你应该发布一个新问题。但是在文档中查看“NSManagedObjectID”以了解 Core Data 如何处理 ID。
    【解决方案2】:

    您如何知道要提取哪张信用卡?您有一个 Person 实体,该实体具有一个 creditCard 属性,该属性引用一个 CreditCard 对象(不同的实体)。您不必要求 Core Data 执行另一次获取,点击 person 引用上的 creditCard 属性会导致它“错误”对象并自动获取相关的 CreditCard 实体。如果是一对多关系,则该属性实际上是一个 NSSet,表示与该人相关的所有 CreditCard。 Read the Core Data guide,这样的信息非常丰富。

    【讨论】:

      猜你喜欢
      • 2011-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-29
      相关资源
      最近更新 更多