2016-12-01 6 views
0

Swift 3のRealm(2.1.0)の最新バージョンをインストールしようとしましたが、この行にエラーが表示されています: - DataManager.swift:レルム= RLMRealm(DatabasePathにパスを):みましょう258:21:引数ラベル '(パスを:)' 使用可能な任意のオーバーロード 引数の宣言と一致しないことはここにある: するvar DatabasePathに:文字列RLMRealm(path :)引数ラベル '(path :)'が利用可能なオーバーロードと一致しません

私はスイフト3が最初の議論のためのラベルを必要としていることを知っていますが、私は交換のためにどこでも見てきましたし、答えを見つけることができません。

答えて

0

+ [RLMRealm realmWithPath:]は、何ヶ月も前にRealmから廃止され、完全に削除されたAPIでした。 + [RLMRealm realmWithConfiguration:]に置き換えられました。RLMRealmConfigurationオブジェクトには、fileURLプロパティで設定されたターゲットファイルへのファイルパスが指定されています。サイドノートでは

let configuration = RLMRealmConfiguration.defaultConfiguration() 
configuration.fileURL = URL(path: databasePath) 
let realm = RLMRealm(configuration: configuration) 

、あなたはスウィフトにレルムのObjective-Cのバージョンを使用するための具体的な理由を持っていない限り、私は非常にあなたの代わりにthe native Swift version of Realmを使用してお勧めします。それはずっと簡単で、スウィフト3ではもっと自然な気がするはずです。:)

+0

私はこのプロジェクトに慣れていて、6ヶ月前に何人かの開発者がいなくなった場所を見つけました。私は、プロジェクトにRealm.hや他のものがまだ残っているので、私はいくつかの深刻なハウスキーピングがあると思う。 – MarkAMark

+0

TiMさん、ありがとうございました。私はこのプロジェクトに慣れていて、6ヶ月前にいくつかのデベロッパーが退場した場所を拾っています。私は、プロジェクトにRealm.hや他のものがまだ残っているので、私はいくつかの深刻なハウスキーピングがあると思う。 RLMRealm(_ :)の引数が文字列ではなくURLを探しているためです。そのため回避策は次のとおりです。var databasePath:URL、次にrealm = RLMRealm(url:databasePath)を指定します。しかし、RealmのネイティブSwiftバージョンを使用するよう勧告に従えば、そのすべてが変わると思います。 – MarkAMark

関連する問題