2016-04-27 150 views
-5

境界我用來存儲一些數據,和調試我碰到以下情況傳來:任何人都可以向我解釋如何呢?

enter image description here

在圖像的左側檢查從境界的要求來的值。

var result = realm.objects(Model).filter("...")

所以右側而來的值需用合適打印結果的搜索對象的描述。

是如何運作的?

+0

我認爲你需要提供更多的上下文。我用小狗例如默認的境界測試這一點,與屬性設置爲「nil',它出現在nil'」在右窗格中。 – paulvs

+0

你試試,把設定值後取breackpoint日期? –

+0

是,http://imgur.com/B7BUNyP。 – paulvs

回答

1

我假定是你的問題,即使打印print函數值,但調試器顯示nil控制檯。

如果是這樣,它的預期的行爲。 Realm在實際訪問屬性之前不復制任何數據。當訪問屬性,域直接從文件讀取的數據。所以Realm不會將任何日期存儲到它的ivar。此外,這個領域將在其持續存在的那一刻改變到另一個對象類。這就是爲什麼你不能通過調試器和輸出都爲零值看不到任何價值承諾後。

所以,如果你想調試對象的值,你可以在調試控制檯使用po命令,或者只是使用print()方法。

也請參閱使用領域的SWIFT API必須通過LLDB控制檯來完成https://realm.io/docs/swift/latest/#debugging

調試應用程序。

注闕雖然通過我們的Xcode插件的安裝LLDB腳本允許檢查在Xcode的UI你的境界變量的內容,這並沒有對斯威夫特工作。相反,這些變量將顯示不正確的數據。你不應該改用LLDB的PO命令檢查存儲在域數據的內容。

,另請參閱:https://github.com/realm/realm-cocoa/issues/2777

相關問題