多领域架构

时间:2018-07-14 13:44:49

标签: ios swift realm

我对我的项目中的多个领域的体系结构有疑问。请考虑以下模型:

@objcMembers class Book: Object {
    dynamic var bookID = UUID().uuidString
    dynamic var title: String = ""
    dynamic var year: Int = 0

    override static func primaryKey() -> String {
        return "bookID"
    }
}

我想做的是能够喜欢一本书或将其放入购物清单。 我想到的第一个解决方案是针对以下三个默认领域:

  • 书籍-RealmBooks
  • 喜欢的书-RealmLiked
  • 已添加到购物清单中的图书-RealmShopping

使用这种相当简单的方法,我被迫拥有多个领域。将来,我想将上述Realms的数据同步到Realm Cloud。因此,要避免这种情况,是否有可能将RealmLikedRealmShopping的数据组合在一起的体系结构?这可能是对象类型UserSettings

@objcMembers class UserSettings: Object {
    dynamic var userID = UUID().uuidString
    let likedBooks = List<Book>()
    let shoppingListBooks = List<Book>()

    override static func primaryKey() -> String {
        return "userID"
    }
}

然后,我将简单地同步UserSettings,这就像主领域一样。显然,其余的RealmBooks将在单独的领域中同步。所有这些的原因是由于试图使我的项目保持简单以及限制Up to 3 Realm Instances在Realm Platform Cloud的标准版本中进行同步所致。

我想知道这种情况下的最佳实践。非常感谢您的帮助。

0 个答案:

没有答案