核心数据如何将NSNumber更改为NSString?

Jee*_*ena 2 iphone core-data

我正在为我的应用程序使用Core Data,我有一个模型预订,我有一个facebook_event_id,起初我有一个整数64但问题是这可能是短暂的,我希望它改为NSString(我无论如何,从Facebook获取JSON字符串).

我现在做了以下事情:

  • 编辑器 - >添加模型版本并将其基于我的旧版本
  • 重建我的子类
  • 使用NSMigratePersistentStoresAutomaticallyOption和NSInferMappingModelAutomaticallyOption设置为YES添加此dict

当我测试它在Integer 16和64之间进行更改时,一切正常,但是当我尝试从Integer 64和String更改时,它给出了一个错误:

Can't find or automatically infer mapping model for migration

所以我添加了一个新的映射模型,我想在其中修复它 ReservationRoReservation | facebook_event_id | $source.facebook_event_id

我认为应该做一些事情$source.facebook_event_id来让它转换,但我不知道写什么来让它工作.不应该在那里使用普通的Objective-C而是使用NSExpression,但是在那里它没有解释如何将NSNumber转换为NSString.

Dan*_*son 6

我想你想要:

FUNCTION($source.facebook_event_id, "stringValue")
Run Code Online (Sandbox Code Playgroud)

这将使当前在您的facebook_event_id属性中的NSNumber,并将stringValue消息发送给它.