如何创建领域数据库?我为swift(>=3.0)安装了Realm by CocoaPods。我试图创建一个简单的数据库,将保持最多20个对象。我已经创建了一个类数据库():
import RealmSwift
class DataBase: Object{
dynamic var code: String = ""
dynamic var desc: String = ""
dynamic var capture: [UIImage] = []
dynamic var lon: Double = 0.0
dynamic var lat: Double = 0.0
dynamic var type: Int = 0
}
我想在数据库中添加一个对象:
let offlineInfo = DataBase()
let realm = try! Realm()
offlineInfo.code = "testCode"
offlineInfo.desc = "testDescription"
offlineInfo.capture = self.capture
offlineInfo.lat = self.lat
offlineInfo.lon = self.lon
offlineInfo.type = 2
try! realm.write {
realm.add(offlineInfo)
}
但是我在创建“offlineInfo”对象时有一个sigabret错误,并且不确定我是否正确地执行了该操作。即使我退出应用程序,数据库也会节省吗?
最佳答案
最有可能
dynamic var capture: [UIImage] = []
是一个问题:Realm不支持直接存储
UIImage
。这里有两个选项:要么存储图像的
NSData
表示,要么将图像存储在磁盘上,但将它们的路径保存在数据库中。进一步了解Docs中支持的数据类型。