2015-10-14 31 views
3

我试图围绕Swift中的Realm API进行打包,这看起来非常有希望。我在他们的文档中尝试了一些演示代码,并且一直收到相同的错误。 我有以下内容的Dog.swift文件:Swift无法将类型值转换为Realm中的预期参数

import Foundation 
class Dog { 
    dynamic var name = "" 
    dynamic var age = 0 
} 

在我的主要ViewController.swift,我有以下创建狗的实例,并尝试将其保存。问题是,realm.add线路没有编译,因为它“无法将类型的价值‘狗’到期望的参数类型‘对象’”

import UIKit 
import RealmSwift 

class ViewController: UIViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 

    let myDog = Dog() 
    myDog.name = "Rex" 
    myDog.age = 10 

    // Get the default Realm 
    let realm = try! Realm() 
    // You only need to do this once (per thread) 

    // Add to the Realm inside a transaction 
    realm.write { 
     realm.add(myDog) 
    } 
    } 
} 

任何帮助将不胜感激。谢谢!

回答

0

在Dog类中导入RealmSwift框架而不是Realm框架。

+0

这是正确回答我的问题,为什么会被downvoted? – user2201063

+0

我看到你先写了答案,所以拿+1。 – JCarlos

4

您应该添加进口RealmSwiftDog.swift文件,然后修改它像这样:

class Dog: Object { 
    dynamic var name = "" 
    dynamic var age = 0 
} 
相关问题