我是核心数据的新手。我正在从API提取数据,然后将它们保存到核心数据。这就是我的dataModel。
这是我的API结构,
{
"name" : "name here",
"content" :[
{
"homeContentItems" : [
{
"some objects" : "values",
"contentItemDetails": [
{
},
{
}
]
},
{
"some objects" : "values",
"contentItemDetails": [
{
},
{
}
]
}
]
},
{
"homeContentItems" : [
{
"some objects" : "values",
"contentItemDetails": [
{
},
{
}
]
},
{
"some objects" : "values",
"contentItemDetails": [
{
},
{
}
]
}
]
}
]
}
如何从实体获取数据,以便我也可以从相关实体获取所有数据?
我以前从未使用过数据库,所以对我来说有点困难。任何帮助将不胜感激。
let informedDataFetch = NSFetchRequest<NSFetchRequestResult>(entityName: "Informed360Entity")
informedDataFetch.fetchLimit = 1
informedDataFetch.predicate = NSPredicate()
let tableviewData = try! context.fetch(informedDataFetch)
let tdata : Informed360Entity = tableviewData.first as! Informed360Entity
var contentData = tdata.toContent?.allObjects as? [ContentEntity]
我尝试了这段代码并从ContentEntity表获取数据。我如何也可以获取其他2个表的数据,以便可以在tableview中显示。
答案 0 :(得分:1)
您执行的操作与ContentEntity相同,但是现在您使用了表示关系的两个属性contentDetailItem
和homeContentItems
,这两个属性都将返回Set。
for content in contentData {
let contentDetailItems = content.contentDetailItem
let homeContents = content.homeContentItems
//...
}