【发布时间】:2016-06-30 14:12:23
【问题描述】:
我有以下代码:
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// Override point for customization after application launch.
var config = Realm.Configuration()
config.fileURL = config.fileURL!.URLByDeletingLastPathComponent?
.URLByAppendingPathComponent("HelloWorld.realm")
Realm.Configuration.defaultConfiguration = config
return true
}
我在AppDelegate 中设置领域的默认名称。但是,当我在 ViewController 中创建一个新的 Realm 对象时,不会加载此名称/配置,如下所示:
class LoadingScreenViewController: UIViewController {
let realm = try! Realm()
override func viewDidLoad() {
super.viewDidLoad()
//The config (HelloWorld.realm) is printed
print(Realm.Configuration.defaultConfiguration)
//The config (default.realm) is printed
print(self.realm.configuration)
}
}
也许是因为我的 ViewController 领域是一个拥有自己状态的新对象。如果是这样的话,我应该做一个单身人士吗?如果我这样做,那是否意味着我无法处理对数据库的异步写入。
【问题讨论】: