gpt4 book ai didi

ios - RLM 异常 : 'Primary key property ' serial' does not exist on object 'Book' Migrating to Swift 4

转载 作者:搜寻专家 更新时间:2023-10-30 22:22:44 25 4
gpt4 key购买 nike

我在使用 Swift 4 编译的 iOS 上的 Realm 遇到了这个问题,应用程序在启动时崩溃并显示以下消息

RLMException', reason: 'Primary key property 'serial' does not exist on object 'Book''

我看到了类似的错误信息,但不是同一个。这是我的对象的样子

import Foundation
import RealmSwift

class Book: Object {
dynamic var serial: String = ""
dynamic var title: String = ""
dynamic var pages: Int = 0
dynamic var genre: String = ""

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

当我通过 Realm Browser 应用程序检查 default.realm 文件时,我注意到这些条目只有一个 # (0,1,2) 而其中没有任何数据。如果我注释掉主键,它会运行,但 Realm 中不会为该对象存储任何内容。无法弄清楚为什么会崩溃!

最佳答案

虽然不一定与迁移有关,但 iOS 13 和 Xcode 11 存在问题,可能会导致此问题。具有默认 String 值集的 Realm 类的所有 String 属性都以某种方式被忽略。您可以通过更新到最新版本(当前为 3.20.0)来修复此问题,而不是在 Xcode 上:Product -> Clean Build Folder。

如果您使用的是 cocoa pod ,请执行以下操作:

打开项目的 Podfile,并将 RealmSwift 行替换为:

pod 'RealmSwift', '~> 3.20.0'

然后,在项目文件夹中打开终端并:

pod repo update
pod install

希望对您有所帮助。

关于ios - RLM 异常 : 'Primary key property ' serial' does not exist on object 'Book' Migrating to Swift 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48810421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com