我已经通过领域创建了一个DB,我无法找到文件,因为我的操作系统(Yosemite)在/private/var/mobile中没有移动文件夹。

我应该如何访问我的领域以在浏览器中运行?

交叉张贴从谷歌组


当前回答

我在这方面更进一步。 我已经创建了一个名为RealmFunctions的swift文件,并在其中创建了这个函数

    import RealmSwift
    func realmAndPath() -> Realm {
        if dev {
            // location of my desktop
            return try! Realm(path: "/Users/slynch/Desktop/TestRealm.realm")
        } else {
            return try! Realm()
        }
    }

现在在我的主视图控制器中,我有一个全局布尔变量叫做dev

var dev: Bool = true // when in development mode
var dev: Bool = false // when I want to run on my device or upload to app stor.

现在,我在代码中要做的就是

let realm = realmAndPath()

因此,当处于开发模式时,我可以在桌面上找到我的领域数据库,并可以在领域浏览器中打开。

其他回答

我为iOS/macOS找到了最简单的方法 (适用于swift 3 Xcode 8.3)

override func viewDidLoad() {

   // for swift 2.0 Xcode 7
   print(Realm.Configuration.defaultConfiguration.fileURL!)
}

然后x代码将记录正确的路径,检查下面的屏幕。

现在打开你的Finder并按⌘+ +G (command+shift+G)并粘贴到Xcode上的日志路径

因为你的应用在iOS模拟器上

输入

console.log (Realm.defaultPath)

例如:App.js

我在这方面更进一步。 我已经创建了一个名为RealmFunctions的swift文件,并在其中创建了这个函数

    import RealmSwift
    func realmAndPath() -> Realm {
        if dev {
            // location of my desktop
            return try! Realm(path: "/Users/slynch/Desktop/TestRealm.realm")
        } else {
            return try! Realm()
        }
    }

现在在我的主视图控制器中,我有一个全局布尔变量叫做dev

var dev: Bool = true // when in development mode
var dev: Bool = false // when I want to run on my device or upload to app stor.

现在,我在代码中要做的就是

let realm = realmAndPath()

因此,当处于开发模式时,我可以在桌面上找到我的领域数据库,并可以在领域浏览器中打开。

在斯威夫特

func getFilePath() -> URL? {
    let realm = try! Realm()
    return realm.configuration.fileURL
}

要获得iOS的DB路径,最简单的方法是:

在模拟器中启动应用程序 在调试器中随时暂停它 转到控制台(您有(lldb))并键入:po RLMRealm.defaultRealmPath

恩……您拥有到域数据库的路径