我正在尝试使用API返回一些带有下划线的字段,例如_id。我无法在-xcdatamodel中映射此字段。该属性必须以字母开头。
我还试图将此字段映射为“id”,并在“用户信息”会话中提供类似id:_id的键/值,但没有成功。
你有解决这个问题的方法吗?据我所知,有许多API都有带下划线的字段。
其他非下划线字段的映射没有问题。
{
"__v": 0,
"_avRateDelay": 5,
"_avRateRecommend": 5,
"_avRateStaff": 5,
"_id": "530f733df222bf594b190e0a10",
"_reviews": 1,
"active": 1,
"address": {
"city": "Little Rock",
"country": "USA",
"other": "",
"state": "AZ",
"street": "2701 E Roosevelt Rd",
"zip": "72206"
},
"location": {
"lat": 34.721175,
"lng": -92.24168600000002
},
"name": "Certainteed 69"
}
答案 0 :(得分:0)
不要在Objective-C中使用id
或_id
。 id
是保留字。由于许多服务器都喜欢使用它,我建议您编写映射代码,以便将其从服务器id
映射到类似identifier
的内容。
因为你需要编写代码来解析字段,所以没有困难去寻找那个密钥并改变它。您甚至可以将映射存储在NSEntityDescription
中,并设置代码以查找其他映射并更改它们。这样,您就可以将其他服务器样式的值(例如created_at
)更改为与createdAt
类似的Objective-C对应项。
键/值可直接在模型编辑器中编辑,然后通过-entity
上的NSManagedObject
属性进行访问。