Я новичок в основных данных.
Что я пытаюсь сделать: я пытаюсь создать каркас Cocoatouch, в котором есть приложение для добавления сведений о сотрудниках и их отображения в виде таблицы. Так что я могу добавить эту структуру в мой основной проект, чтобы работать независимо.
Проблемы, с которыми я сталкиваюсь: фрейм работает без ошибок. Я добавил базовый стек данных из swift 3 в платформу. Но когда я запускаю основной проект, в момент загрузки фреймворка в журнале отображаются "Не удалось загрузить модель с именем Простая фреймворк", "Ошибка при получении" и "Сотрудник должен иметь действительное описание сущности". Код, который я использовал в рамках, показан ниже:
public class CoreDataStack {
public static let sharedInstance = CoreDataStack()
lazy var persistentContainer: NSPersistentContainer = {
let container = NSPersistentContainer(name: "SimpleFramework")
container.loadPersistentStores(completionHandler: { (storeDescription, error) in
if let error = error {
fatalError("Unresolved error \(error), \(error)")
}
})
return container
}()
public func saveContext() {
let context = persistentContainer.viewContext
if context.hasChanges {
do {
try context.save()
} catch let error as NSError {
fatalError("Unresolved error \(error), \(error.userInfo)")
}
}
}
}
@IBAction func addEmployee(_ sender: Any) {
//To save the data
let context = CoreDataStack.sharedInstance.persistentContainer.viewContext
let employee = Employee(context: context)
employee.employeeName = nameTextField.text
employee.employeeAge = Int16(ageTextField.text!)!
employee.hasVehicle = hasVehicle.isOn
CoreDataStack.sharedInstance.saveContext()
navigationController!.popViewController(animated: true)
}
@IBAction func addEmployee(_ sender: Any) {
//To save the data
let context = CoreDataStack.sharedInstance.persistentContainer.viewContext
let employee = Employee(context: context)
employee.employeeName = nameTextField.text
employee.employeeAge = Int16(ageTextField.text!)!
employee.hasVehicle = hasVehicle.isOn
CoreDataStack.sharedInstance.saveContext()
navigationController!.popViewController(animated: true)
}