问题标签 [afincrementalstore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
254 浏览

ios - Heroku Core Data buildpack,没有检测到雪松支持的应用程序

我正在尝试使用AFIncrementalStore 和 Core Data Buildpack将现有的 Core Data(带有本地存储)项目迁移到 Heroku ,但推送到 Heroku 一直失败。

我的应用程序设置与上述教程中的主要区别:

  • 我已经使用 AFNetworking/AFIncremental 依赖项设置了 Xcode 工作区,但实际上还没有更改任何代码。

  • 包含 Xcode 项目/工作区文件的目录比我的 git 存储库的根目录低一级。这意味着heroku create --buildpack git://github.com/mattt/heroku-buildpack-core-data.git无法创建名为 的 git 远程heroku,但我可以cd ..而且heroku git:remote -a appname这似乎很酷。

  • master在我的 git repo 之外的一个分支上工作,所以当我推送到 Heroku 时,我需要使用git push heroku my_local_branch:master.

然而,这git push并没有得到任何地方,甚至没有进入核心数据构建包的东西(据我所知):

0 投票
1 回答
234 浏览

ios - AFIncrementalStore 无法识别的选择器 -[NSNull 长度] 错误

我正在尝试将 AFIncrementalStore 添加到数据库中已有大量数据的现有核心数据应用程序中。我以为我已经添加了所有必要的东西,然后我启动了应用程序,在初始获取请求期间,我收到了这个错误:

错误本身在此处AFReferenceObjectFromResourceIdentifier的方法上被触发。

错误的来源似乎在方法中的 AFIncrementStore.m 中蔓延executeFetchRequest:withContext:error:——当它调用时[results valueForKeyPath:kAFIncrementalStoreResourceIdentifierAttributeName]——返回的数组包含一个或多个NSNull值。(在GitHub 上找到它)

整个库似乎只有很少的文档,所以我确信我应该对我的代码/数据模型做一些非常“明显”的事情。

0 投票
1 回答
319 浏览

uitableview - 使用 NSFetchedResultsController 的 AFIncrementalStore 每个对象 3 个请求

我已经使用 AFIncrementalStore 设置了所有内容,以使用Parse作为后端服务。使用这样的服务使计算 API 请求变得很重要,就好像我每月超过 1MM 请求(尽管是一个成功的指标!)可能会产生一些不错的账单。这通常不会是一个问题,但我所看到的是,如果我在以下方法中放置一个断点AFHTTPClient

我发现对特定对象的请求发生了 3 次,而我只需要一次。

请注意,不同的内存地址来自AFHTTPRequestOperation,我正在打印request.URL属性以检查objectId每个请求的(URL 末尾的随机字符串)。

现在我对它的工作原理还不够熟悉,NSIncrementalStore或者AFIncrementalStore经过两天的调试和检查后弄清楚了。我很想听听有关可能导致这种情况的任何想法,无论是有意还是无意。

我可能会补充一点,我正在使用 aNSFetchedResultsController和 a UITableView。我将对象的第一个请求的堆栈跟踪跟踪到我的 tableview 的数据源。其他 2 个请求回溯到AFIncrementalStore.

0 投票
1 回答
835 浏览

ios - 与 AFIncrementalStore 的映射关系

我正在将 AFIncrementalStore 集成到我的项目中,但我很难弄清楚如何让关系发挥作用。

假设我有两个模型:文档和页面。一个文档有很多页(一对多)。每个模型与另一个模型具有反比关系。

所以我可以这样做:

或者

我正在尝试获取属于文档的所有页面。我有一个 AFIncrementalStore 子类和一个 AFHTTPClient 子类,它们实现了必要的方法。

我可以看到调用了正确的 REST URI(例如 /documents/:id/pages)。我还可以看到页面被下载并存储到 sql 数据库中的 pages 表中。

问题是两者之间的关系没有建立。当我查看数据库时,外键列是空的。

此外,如果我执行 myDocument.pages 它不会返回任何内容。

获取新数据时是否必须手动链接这两者?我正在阅读 AFIncrementalStore 源代码,但没有任何突出之处。

想法?

0 投票
1 回答
553 浏览

ios - AFIncrementalStore 将核心数据与 REST API 同步

我想知道你是否曾经使用过 AFIncrementalStore 在 Core Data 和 REST API 之间进行同步?如果是这样,那么在没有 Heroku Core Data Buildpack 的情况下使用它是一种好方法吗?我不喜欢黑魔法:P

我的核心数据模型可能与 REST API 不完全匹配。

0 投票
1 回答
661 浏览

ios - AFIncrementalStore 的神奇记录

我一直想知道如果我将 AFIncrementalStore 和 Magical Record 结合起来,生活会是什么样子。我只是不知道如何将增量存储设置为神奇记录的存储。有谁知道如何执行这种操作?

0 投票
0 回答
552 浏览

ios - AFIncrementalStore 上下文与 MagicalRecord MR_contextForCurrentThread

我正在尝试将 AFIncrementalStore 与 MagicalRecord 一起使用。

我有一个带有少量属性的 Beer 类(来自 BreweryDB Web 服务)。为了获取啤酒,我使用 [Beer MR_fetchAllWithDelegate:self] 返回 NSFetchedResultsController 实例(我抓取并分配给 beerFetchController)并使用该控制器执行实际提取。您还可以看到,我将视图控制器设置为该方法的委托,而该方法又将该视图控制器设置为 beerFetchController 的委托。到目前为止,一切都很好。我有一个显示啤酒的表格视图,我实现了该方法

因此,每当 AFIncrementalStore 获取数据并将其放入上下文中时,都会通知控制器并依次调用此方法,并刷新表。问题是,这个委托方法根本没有被调用!经过一番调查,我得出了一些结论。

问题是,[NSManagedObjectContext MR_contextForCurrentThread] 将返回一个子上下文,其父上下文是 AFIncrementalStore 内部使用的支持上下文。AFIncrementalStore 保存到父级,而不是子级,因此控制器不知道发生了什么变化,也不会调用委托方法。我能够像这样修改方法:

我没有将控制器绑定到 MR_contextFromCurrentThread 返回的上下文,而是将其绑定到其父级。然后,正如预期的那样,上下文发生了变化,控制器看到了,并且调用了委托方法。问题是,有没有办法将更改从父上下文推送到子上下文,这样我就不必更改方法实现?

0 投票
1 回答
873 浏览

iphone - 我应该使用 AFIncrementalStore 还是 Restkit?

我查看了这两个框架并开始使用 Restkit,但我无法让事情正常工作,而且我发现它非常复杂。更糟糕的是,我在网上找到的大多数信息都已过时,甚至是文档,所以现在我想知道是否应该使用 AFIncrementalStore 代替。

谁能给我为什么我会使用其中一个的理由?从项目描述来看,他们似乎在做同样的事情,还是我弄错了?

我有一个 Rails API 设置,我将在我的应用程序中与之通信,并且我需要能够获取、发布等模型+数据(在我的应用程序中表示为核心数据类)。

0 投票
0 回答
182 浏览

ios - AFIncrementalStore 和访问 API URL,例如 http://apiurl.com/users/1/posts

我查看了 AFIncreementalStore 的 gitHub 页面上包含的示例,并认为我了解从http://apiurl.com/users之类的 URL 从远程 api 请求对象的过程。基本上我会,例如在 UsersListViewController 中,这样做:

我很难弄清楚如何从诸如http://apiurl.com/users/1/posts之类的 URL 中获取诸如“帖子”之类的内容。

我最初的想法是在 fetch 请求中添加一个谓词:

添加这个谓词会使用这个 URL 生成一个 GET 请求(假设我在谓词中使用的用户 ID 是 1)?http://apiurl.com/users/1/posts

0 投票
1 回答
555 浏览

ios - 使用 Core Data 和 AFIncrementalStore 时重新格式化 JSON 属性

我有一个与此处构建的非常相似的 iOS 应用程序:https ://devcenter.heroku.com/articles/ios-core-data-buildpack-app - 即Core DataAFIncrementalStore,但使用自定义 Rails 3.1 服务器服务JSON。

我有两个类似性质的问题:

  • Rails 有一个名为 的属性id,但这是 Objective-C 中的保留字,所以我想activityId在 iOS 应用程序中将其重命名为或类似。我应该在代码中的哪个位置执行此id->activityId翻译?
  • 我所有的日期字段目前都显示(null)在 iOS 应用程序中,我怀疑这是由于 Rails 格式化日期的方式(例如"2012-09-14T11:32:09+02:00")。我应该在 iOS 代码的哪个位置添加我自己的日期解析器?

如果可能的话,我想避免在服务器端生成自定义 JSON。

谢谢!