我有一个使用领域数据库来持久化数据的应用程序,一切正常,但我现在遇到的问题是我想将photo: Data
数组保存到数据库中,我尝试使用标准的 swift 数组格式,但在构建时出错。下面是我的代码
class TodoListModel: Object {
@objc dynamic var id = UUID().uuidString
@objc dynamic var photo: Data? = nil
@objc dynamic var createdDate: Date?
override static func primaryKey() -> String? {
return "id"
}
let parentCategory = LinkingObjects(fromType: CategoryModel.self, property: "items")
}
我现在如何把它photo
变成一个数组
这就是我创建列表的方式
func createTodoList(createdDate: Date, photo: Data) -> Void {
let todoList = TodoListModel()
todoList.createdDate = createdDate
todoList.photo = photo
TodoListFunctions.instance.addData(object: todoList)
}
更新模型
func updateTodoList(update: TodoListModel, createdDate: Date, photo: Array<Data>) -> Void {
update.createdDate = createdDate
update.photo.append(objectsIn: photo)
}
为了能够Data
在Object
子类的单个属性中存储多个类型的对象,您需要使用List
.
class TodoListModel: Object {
@objc dynamic var id = UUID().uuidString
@objc dynamic var createdDate: Date?
let photos = List<Data>()
let parentCategory = LinkingObjects(fromType: CategoryModel.self, property: "items")
override static func primaryKey() -> String? {
return "id"
}
}
然后你可以创建一个TodoListModel
这样的实例:
func createTodoList(createdDate: Date, photos: Array<Data>? = nil) -> Void {
let todoList = TodoListModel()
todoList.createdDate = createdDate
if let photos = photos {
todoList.photos.append(objectsIn: photos)
}
TodoListFunctions.instance.addData(object: todoList)
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句