我在iOS上創建了一個包含Core Data的數據庫。我最初在我的Conversation
實體中設置了一個唯一的約束。但是,刪除它後,我收到錯誤:「在實體對話的唯一性約束屬性中,逗號不是有效的屬性」。「在實體的唯一性約束屬性中,逗號不是有效屬性」Coredata Xcode 8
我查看了我的DataModel.xcdatamodeld中的每個字段,但找不到任何解決方案。
我在iOS上創建了一個包含Core Data的數據庫。我最初在我的Conversation
實體中設置了一個唯一的約束。但是,刪除它後,我收到錯誤:「在實體對話的唯一性約束屬性中,逗號不是有效的屬性」。「在實體的唯一性約束屬性中,逗號不是有效屬性」Coredata Xcode 8
我查看了我的DataModel.xcdatamodeld中的每個字段,但找不到任何解決方案。
它看起來像在Xcode 8.我已經從實體中刪除所有屬性的錯誤,清理項目,然後再次添加的屬性。之後,錯誤消失了。也許這會幫助別人。
我有與Xcode 8.1相同的問題。我不想刪除所有6個實體上的所有痛苦屬性,並找到了另一個解決方案。假設你的模型文件被稱爲「foobar.xcdatamodeld」。
直接在模型中編輯XML。爲此,您需要訪問模型文件內的文件「內容」。通往它的路徑是:foobar.xcdatamodeld/foobar.xcdatamodel/contents
。要在Finder中找到它,請按住Control鍵並點擊「xcdatamodeld」包以「顯示包裝內容」,然後再次點擊「xcdatamodel」包。然後,您可以將文件'內容'拖到您選擇的文本編輯器中。您將看到的限制出現在XML如下:
<uniquenessConstraints>
<uniquenessConstraint>
<constraint value="property_name"/>
</uniquenessConstraint>
</uniquenessConstraints>
您可以編輯「PROPERTY_NAME」以匹配新的價值,或者乾脆刪除的約束。
我檢查了XML文件,並注意到「逗號,分隔,屬性」在XML中。我使用Product-> Clean(command + shift + K)來清理項目。清潔本身並沒有幫助。然後我嘗試了File-> Save(command + S)。
File->保存更新XML併爲我解決問題。
我有類似的問題,跟在上面。我關閉了Xcode 8.2.1並打開了內容文件,但沒有發現唯一性約束。重新打開Xcode後,問題消失了。 –