Я новичок в Core Data. У меня есть проект с сущностью с именем Content и двумя атрибутами: dateCreated с типом Date и text1 Type String. Я создаю данные в Базовых данных:
func createData(){
guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else { return }
let managedContext = appDelegate.persistentContainer.viewContext
let contentEntity = NSEntityDescription.entity(forEntityName: "Content", in: managedContext)!
let content = NSManagedObject(entity: contentEntity, insertInto: managedContext)
content.setValue(Date(), forKey: "dateCreated")
content.setValue("some text", forKey: "text1")
do {
try managedContext.save()
} catch let error as NSError {
print("Could not save. \(error), \(error.userInfo)")
}
}
С Date () это вводит метку времени даты и времени. Примерно так: 2020-03-06 09:49:47 + 0000
Как ввести день и время, разделенные на два разных атрибута ?: День 2020-03-06 Время 09: 49: 47
Я мог бы найти дату:
let date = Date() // 2020-03-01 17:29:42 +0000
let calendar = Calendar.current
let day = calendar.component(.day, from: date)
let month = calendar.component(.month, from: date)
let year = calendar.component(.year, from: date)
let avui = "\(year)-\(month)-\(day)"
Но у меня много сомнений:
- Должен ли я вводить день в Базовые данные с типом Дата, тип Строка?
- Какой тип должен мне использовать для времени?
- Это правильный «формат» для базовых данных:
День 2020-03-06
Время 09: 49: 47
- Существует опция по умолчанию для даты - время: .xdatamodeld> Инспектор> Дата по умолчанию. Я предполагаю, что нет возможности по умолчанию, если я хочу разделить дату и время. Это правильно?