Android Realm Schema 不匹配错误



你们如何将Java Realm对象与swift Realm对象相匹配?

我的领域开发是从 Swift 开始的,因此对象服务器包含从 swift 迁移的数据。然后我用Java(使用Realm Studio的模型(创建了我的Android版本。

Swift:
class OrderItem: Object {
    @objc dynamic var id: String = ""
}
Java
public class OrderItem extends RealmObject {
//    @PrimaryKey
    private String id;
}
Error without @PrimaryKey:
Bad changeset received: Schema mismatch: 'OrderItem' has a primary key on one side, but not on the other.
Error with @PrimaryKey: 
Exception has been thrown: The following changes cannot be made in additive-only schema mode: Primary Key for class 'OrderItem' has been added.

任何想法如何解决这些错误?

不带@PrimaryKey的错误: 收到的变更集错误:架构不匹配:"OrderItem"在一端有一个主键,但在另一端没有。

这表示架构不匹配将执行破坏性架构操作,因此这是不正确的。

@PrimaryKey错误: 已引发异常:在仅加法架构模式下无法进行以下更改:已添加类"订单项"的主键。

这意味着您可能在没有事先@PrimaryKey的情况下尝试过,因此您在本地仍然有一个没有主键的架构,因此您需要擦除应用程序的数据以删除 Realm 文件,然后使用 @PrimaryKey 重试。

相关内容

  • 没有找到相关文章

最新更新