iOS:在swift 1.2中写入Realm

时间:2016-01-12 07:25:41

标签: ios swift realm

我尝试使用given method in the docs实例化域以在Realm中执行写入:

let realm = try! Realm()

但是我收到以下错误:

Consecutive statements on a line must be separated must be separated by ';'

鉴于Realm实际上是为Swift 2.0构建的,我假设在Swift 1.2(版本I' m使用)中不支持try!关键字,但Realm声明它支持1.2,但不提供有关如何在v 1.2中执行此操作的任何文档。

也许我错了它是一个快速版本的问题?谁知道问题是什么?感谢。

2 个答案:

答案 0 :(得分:2)

您需要下载this branch中提供的Swift 1.2版本。

答案 1 :(得分:-1)

请按照说明操作。

创建桥接标题

例如,

1)在你的xcode项目中添加一个新的Objective-C类。

2)同意创建桥接标题

3)删除Objective-C类

在桥接标题中添加:

#import "Realm/Realm.h"

从代码中删除所有Import Realm语句,包括从RLMSupport.swift中删除 现在它应该工作。例如,我将它放在我的ViewController.swift

中进行测试
import UIKit

class Person: RLMObject {
    dynamic var name = ""
    dynamic var birthdate = NSDate(timeIntervalSince1990: 1)
}

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()

        let person = Person()
        person.name = "ANY_NAME"

        // Get the default Realm
        let realm = RLMRealm.defaultRealm()

        // Add to the Realm inside a transaction
        realm.beginWriteTransaction()
        realm.addObject(author)
        realm.commitWriteTransaction()

        // Print all Persons
        println(Person.allObjects())
    }
}

输出:

RLMArray <0x9a675890> (
[0] Person {
    name = ANY_NAME;
    birthdate = 1990-01-01 00:00:01 +0000;
}
)