Создать основные данные. День и время разделены - PullRequest
0 голосов
/ 11 марта 2020

Я новичок в 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> Инспектор> Дата по умолчанию. Я предполагаю, что нет возможности по умолчанию, если я хочу разделить дату и время. Это правильно?

...