首页 文章

核心数据:关系和用户对象

提问于
浏览
-1

我正在将StackMob与CoreData(远程数据库)一起使用,但我认为这是一个通用的核心数据问题 .

我有3个实体:

  • 用户(登录)

  • 汽车

  • 自行车

每个实体都有几个属性 .

用户可以拥有多个汽车和自行车对象(多对多关系) . 汽车和自行车只能拥有一个所有者(用户)(与一对一关系) .

现在假设我们有2,000个用户 . 每个用户都是汽车经销商,在CoreData中存储了500辆汽车和300辆自行车记录/对象 . 我希望用户根据汽车和自行车的属性进行提取 . 我打算为此使用谓词 . 为了减少常量获取请求,我还计划使用Cache .

但是,我的问题是:

  • 如何保存每个用户下的记录/对象? CoreData中有一个术语吗?

  • 我希望用户登录,并且只能在用户创建的对象中根据其属性(Model,Manufacture,DateStamp等)获取所有汽车/自行车 . 我想我要避免的是当用户根据Cars and Bikes实体中的属性执行获取请求时,它只在自己的User对象下搜索 . 我不希望获取请求搜索所有其他用户的对象,因为这会浪费,因为我担心会减慢应用程序的速度 . 在CoreData中设置它的最佳方法是什么?

刚刚阅读了2本核心数据手册,我不知道如何处理这个问题 . 我知道我不是最聪明的,所以我向专家寻求一些建议 . 谢谢 .

1 回答

  • 2

    CoreData实际上非常优化 . 你需要的是一个NSSearchPredicate和NSFetchedResultsController . 这些都很复杂,我不能只是“告诉”你如何使用它们 . 我发现这个开放的课程非常有帮助

    http://www.stanford.edu/class/cs193p/cgi-bin/drupal/

    它使用核心数据构建一个在iOS中获取应用程序的网站 . 检查核心数据集,如果你不知道他在说什么,那就回去观看一些早期的

相关问题