2016-01-16 4 views
5

私はXcode 7.2、Swift 2.1.1を使用しています。私はレルム:スウィート `let`プロパティはダイナミックとしてマークできません

class B: Object { 
    dynamic let lists = List<A>() 
} 

以下レルムモデルオブジェクトを持っている。しかしスウィフトコンパイラが言って私にエラーを与える:

そのタイプはObjective-Cの

で表すことができないため、プロパティが動的としてマークすることはできません

レルムの次のようなドキュメントを見ました:

レルムモデルのプロパティにはdyが必要ですこれらのプロパティーが基礎となるデータベース・データのアクセッサーになるようにするために使用します。

これには2つの例外があります。一般的な性質は 動的プロパティの動的な 派遣のために使用されているObjective-Cランタイム、で表すことができない、と常にあるべきため、リストとRealmOptionalプロパティ は、動的として宣言することはできませんlet

と宣言しましたが、letと宣言すると、今このケースを解決していないようです。私は何が欠けていますか?

答えて

3

あなたが引用されたドキュメントは、次の(強調鉱山)が含まれています。一般的な性質は、Objective-Cランタイムで表すことができないため

リストとRealmOptionalプロパティは、[...]、ダイナミックとして宣言することはできません、常にletと宣言する必要があります。

これはあなたの財産がそうのように宣言されるべきであることを意味:

let lists = List<A>() 

レルムスウィフトドキュメントは最近うまくいけば、宣言のさまざまな種類の要件を明確にproperty declaration cheatsheetを得ました。

+0

:D *バンギングヘッド* – tropicalfish

関連する問題