0
我有两个实体员工和公司。 如何从两个实体获取数据并在表格视图中显示核心数据(Swift)
我在两个实体中都插入了数据。使用以下梅索德:
func addEmployees() {
let companyEntity = NSEntityDescription.entityForName("Company", inManagedObjectContext: managedContext)
let company = Company(entity: companyEntity!, insertIntoManagedObjectContext: managedContext)
company.name = txtCompany.text
let employeesEntity = NSEntityDescription.entityForName("Employees", inManagedObjectContext: managedContext)
let employees = Employees(entity: employeesEntity!, insertIntoManagedObjectContext: managedContext)
employees.name = txtName.text
employees.empAge = Int(txtAge.text!)
employees.address = txtAddress.text
// employees.company = company
company.mutableSetValueForKey(EntityName().employee).addObject(employees)
do {
try managedContext.save()
} catch {
fatalError("Error in saving Data...")
}
}
,并使用该梅索德检索的数据:
func fetchCompanyName() {
let request = NSFetchRequest(entityName: EntityName().company)
if managedContext.countForFetchRequest(request, error: nil) > 0 {
do {
let fetchResult = try managedContext.executeFetchRequest(request)
company = fetchResult as! [Company]
} catch {
fatalError("Error in fetching company")
}
}
}
我想表明在节头和细胞的员工名单的公司名称。部分的编号将等于公司名称。我不知道该怎么做?
感谢您的帮助
你熟悉'NSFetchedResultsController'及其委托方法吗?如果你实现了一个,你可以在实体Employees中设置它的'sectionNameKeyPath'值为一个新属性的值(例如'sectionIdentifier'),当你添加新对象时,你设置为'company.name'。 – andrewbuilder