Swift 创建核心数据。日复一日
我是新的核心数据。我有一个项目,它有一个名为Content的实体和两个属性:dateCreated类型为Date,text1类型为String。我在核心数据中创建数据:Swift 创建核心数据。日复一日,swift,core-data,xcode11.3,Swift,Core Data,Xcode11.3,我是新的核心数据。我有一个项目,它有一个名为Content的实体和两个属性:dateCreated类型为Date,text1类型为String。我在核心数据中创建数据: func createData(){ guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else { return } let managedContext = appDelegate.persistent
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>Inspector>default date。我想如果我希望日期和时间分开,就不可能出现默认情况。是这样吗?我不认为您应该这样做,而是在需要时用swift代码提取时间。为什么需要两个属性,一个是日期,一个是时间?原因可能是按日期和时间单独分组或排序,或者查询一天中的时间、工作日等。这取决于用例如何分别存储日期和时间值,以及应该使用什么属性数据类型。关于问题:日期时间有一个默认选项。。。是这样吗?答:任何属性都有一个默认选项,它取决于类型以及默认值的外观。@Marcus:1-原因:用户希望按日期排序。时间与他们无关。2-我说我知道日期时间有默认值。我的问题是日期和时间的默认值。