我已经创建了一个 Amazon Web Services EC2 实例并部署了一个带有 Realm 对象服务器的 AMI,如其文档所述: https://realm.io/docs/realm-object-server/#install-realm-object-server
一旦安装并创建了我的管理员用户,我就完成了 iOS 教程:https://realm.io/docs/tutorials/realmtasks/ ,直到第 7 点,足以创建任务,但是当我在应用程序中添加新任务时,没有任何反应。调试,我注意到下一句 try 没有执行:
let items = self.items
try! items.realm?.write {
items.insert(Task(value: ["text": text]), at: items.filter("completed = false").count)
}
项目集合似乎已正确初始化:
在ROS的dashboard中,可以看到Xcode中引用的数据库:
在图片中可以看到“默认权限”属性是无权限,这是没有创建新任务的原因吗?如果是这样,我该如何更改该权限?如果这不是原因,有人可以帮助我吗?
提前致谢
最佳答案
问题是我没有遵循所有完整的教程,因为我不想使用桌面应用程序,只是移动示例,而是桌面应用程序中的 Realm 初始化对象,所以我从未获得执行操作的有效 Realm 。
为了快速简单地开始使用指向在线服务器而非本地服务器的 Realm 教程,您必须初始化 TaskList 对象并在设置时将其添加到 self.realm
// Show initial tasks
func updateList() {
if self.realm.objects(TaskList.self).count == 0 {
let list = TaskList()
list.id = "000001"
list.text = "lista de prueba"
// Add to the Realm inside a transaction
try! self.realm.write {
self.realm.add(list)
}
}
if self.items.realm == nil, let list = self.realm.objects(TaskList.self).first {
self.items = list.items
}
self.tableView.reloadData()
}
检查是否没有带有 if self.realm.objects(TaskList.self).count == 0 { 的 TaskList,您可以创建一个并初始化 Realm 。
关于ios - 尝试使用 Realm 对象服务器教程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41846405/