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

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

交叉张贴从谷歌组


当前回答

在斯威夫特

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

其他回答

一个简单的替代模拟器应用程序

在Finder中创建智能文件夹/搜索。提供快速和简单的点击访问所有的领域文件。

在Finder中打开文件夹/Users/$USER/Library/Developer/CoreSimulator/Devices。 终端打开/Users/$USER/Library/Developer/CoreSimulator/Devices 搜索。realm 将搜索改为只在“设备”文件夹中查找。

保存搜索到你的侧边栏(例如作为Realms)

当按日期排序时,这将为您提供一个快速和容易点击的最新修改模拟器.realm文件列表。

首先,我承认这是一个Android线程,但这是这个问题的第一个搜索结果。

要在Realm Browser中打开最近创建的Xcode Simulator Realm db,你可以在Automator中使用这个脚本,或者在终端中全部输入。通过使用Automator,我可以一键访问我的当前领域。

    cd ~/Library/Developer/CoreSimulator/Devices/
    cd `ls -t | head -n 1`/data/Containers/Data/Application
    cd `ls -t | head -n 1`/Documents    
    open -a 'Realm Browser' ./default.realm

安装Realm浏览器。 在Automator中,单击新建,选择运行Shell脚本,粘贴代码,更改Realm Db名称,单击运行测试,将文件保存到方便快速点击访问的地方。

我不知道我第一次在哪里找到这个技巧,但这个帖子提醒了我过去是如何访问我的实时数据的。

我在这方面更进一步。 我已经创建了一个名为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()

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

正确的(lldb)命令是:Realm.Configuration.defaultConfiguration.path。

我所做的就是利用

let realm = Realm(path: "/Users/me/Desktop/TestRealm.realm")

然后它就会在桌面上全屏显示出来,我可以双击打开Realm浏览器。稍后,当我满意一切都按预期工作时,我可以删除参数并让它使用默认位置。