我正在开发一个通用的iOS应用程序,我想在调试时看到日志中的原始SQL.这篇博客文章中有一些关于如何为iOS Core Data开发启用原始SQL日志记录的信息.给出的示例适用于XCode 3,我不清楚如何在XCode 4中启用它.
我尝试了"产品" - >"编辑方案",并将" -com.apple.CoreData.SQLDebug 1 " 添加到"启动时传递的参数",但我仍然没有在日志中看到任何输出.不确定我是在寻找错误的地方还是仅仅错误地传递了参数.
当我插入新对象时,我使用以下代码:
NSManagedObjectContext *context = [appDelegate managedObjectContext];
Favorits *favorits = [NSEntityDescription insertNewObjectForEntityForName:@"Favorits" inManagedObjectContext:context];
favorits.title = @"Some title";
NSError *error;
if (![context save:&error]) {
NSLog(@"Whoops");
}
Run Code Online (Sandbox Code Playgroud)
如何更新核心数据中的现有对象?
我写了许多与后端通信的iOS应用程序.几乎每次,我都使用HTTP缓存来缓存查询并将响应数据(JSON)解析为Objective-C对象.对于这个新项目,我想知道核心数据方法是否有意义.
这就是我的想法:
iOS客户端向服务器发出请求,并将对象从JSON解析为CoreData模型.
每当我需要一个新对象,而不是直接获取服务器时,我解析CoreData以查看我是否已经发出了该请求.如果该对象存在且尚未过期,则使用获取的对象.
但是,如果对象不存在或已过期(这里将应用某些缓存逻辑),我将从服务器获取对象并相应地更新CoreData.
我认为拥有这样的架构可以帮助实现以下目标:1.避免对后端进行不必要的查询2.允许完全支持离线浏览(您仍然可以使用DataCore的RDBMS进行关系查询)
现在这是我对神的问题:
有办法让目录在一个.app?
目前,如果我添加一个文件Xcode,无论它在哪个Group层次结构中,该文件总是位于我的应用程序包中的平面文件系统中.
我正在使用RestKit框架,我想发出一个POST HTTP请求.响应是JSON.我想将JSON响应自动放入CoreData中.
我不知道确切地调用什么方法来发出请求.我知道我应该使用RKObjectManager的方法,但我找不到合适的方法.
我找到了这个方法,postObject:delegate:但我不知道作为参数传递的对象.我也在文档中找到了这个方法:loadObjectsAtResourcePath:usingBlock:但是我不能使用它,因为它告诉我:
No visible @interface for 'RKObjectManager' declares the selector 'loadObjectsAtResourcePath:usingBlock:'
Run Code Online (Sandbox Code Playgroud) core-data ×3
ios ×3
architecture ×1
bundle ×1
http ×1
iphone ×1
objective-c ×1
request ×1
restkit ×1
restkit-0.20 ×1
sql ×1
xcode4 ×1