我的核心数据模型中有两个类:Sample和Photo1:N关系.我NSManagedObjectContext在我的应用程序中使用了一个用作托管对象的便笺簿.因此,我总是在上下文中插入最近创建的对象.如果用户选择放弃她的更改,我只需回滚上下文.否则,保存上下文.
错误
CoreData:错误:将托管对象0x1704253a0(0x1702a1560)从其上下文中删除后进行变更.
Photo从上下文中删除对象后,将在控制台中打印.删除在上下文保存之前发生,因此Photo objectID是临时的.这是快速代码:
function addPhoto(to sample: Sample) -> Photo {
let photo = Photo(context: managedObjectContext)
sample.addToPhotos(photo)
photo.sample = sample
return photo
}
function remove(photo: Photo) {
photo.sample.removeFromPhotos(photo)
photo.sample = nil
managedObjectContext.delete(photo)
}
//user adds new Photo
let sample = loadSample() //sample is loaded from database
let photo = addPhoto(to: sample)
//later on user decides to remove the added Photo before the context is saved
remove(photo: photo)
Run Code Online (Sandbox Code Playgroud)
奇怪的是,没有抛出错误或异常,我的代码完成到最后.但是,错误消息将打印在控制台上.
我相信这是因为上下文Photo …
我在Swift中使用新的统一日志API.
所以我创建了一个记录器并使用它如下:
let testLogger = OSLog(subsystem: "my.subsystem", category: "test")
os_log("just a test: %@", log: testLogger, type: .error, "error")
Run Code Online (Sandbox Code Playgroud)
如果iOS设备与Mac断开连接,如何检索记录的消息?
我知道新的控制台应用程序会显示设备连接到Mac时记录的消息.但是,我想检索设备与计算机断开连接时记录的消息.我怎样才能做到这一点?
谢谢.
我使用gsubR中的函数删除数字中不需要的字符。因此,我应该从字符串中删除所有不是数字的字符.,和-。我的问题是,正则表达式不去除一些非数字字符,如d,+和<。
以下是我的正则表达式,gsub执行及其输出。如何更改正则表达式以实现所需的输出?
电流输出:
gsub(pattern = '[^(-?(\\d*\\.)?\\d+)]', replacement = '', x = c('1.2<', '>4.5', '3+.2', '-1d0', '2aadddab2','1.3h'))
[1] "1.2<" ">4.5" "3+.2" "-1d0" "2ddd2" "1.3"
Run Code Online (Sandbox Code Playgroud)
所需的输出:
[1] "1.2" "4.5" "3.2" "-10" "22" "1.3"
Run Code Online (Sandbox Code Playgroud)
谢谢。