Ios 对于只读域,是否每次使用时都需要引用路径?
我有一个预加载的只读领域数据库,它位于主捆绑包中 我是否需要为我提出的每个查询引用该路径,或者是否有更简单的方法Ios 对于只读域,是否每次使用时都需要引用路径?,ios,swift,realm,Ios,Swift,Realm,我有一个预加载的只读领域数据库,它位于主捆绑包中 我是否需要为我提出的每个查询引用该路径,或者是否有更简单的方法 //Locate database let localRealmPath = NSBundle.mainBundle().pathForResource("dogs", ofType: "realm")! let realm = RLMRealm(path: localRealmPath, readOnly: true, error: nil) let d
//Locate database
let localRealmPath = NSBundle.mainBundle().pathForResource("dogs", ofType: "realm")!
let realm = RLMRealm(path: localRealmPath, readOnly: true, error: nil)
let dog = Dog.objectsInRealm(realm, "name = 'Pat'").firstObject() as Dog
谢谢 您不需要为每个查询实例化/检索新的
RLMRealm
实例。您可以为任意数量的任意读取操作重用只读域。只需确保您没有从不同的线程访问RLMRealm
实例。Hey fisher是的,您每次都必须引用它,这样您就有了正确的领域。你能分享一些你认为最理想的使用领域的方法吗?谢谢你提供的信息!如果有一个标签功能就太棒了。假设您可以使用名称或标记引用领域。所以你可以用“RLMRealm.realmWithTag(“Dogs”)”来理解它。但是当路径未知时,这可能很难实现。我认为这会很棘手,因为我们需要找到一种方法来设置与该标记相关的正确路径,正如您所提到的。正如马吕斯在下面提到的,只要你不是从不同的线程访问这个领域,你就可以将它们存储在你的属性中。谢谢!我为这个领域制作了一个lazy变量,它工作良好,可以在ViewController的范围内重用。但我必须在每一个我需要获取的VC中都做到这一点。但这没什么大不了的,只是想看看是否有更简单的选择:)!