草庐IT

ios - Realm - 我可以在删除对象后保存对象吗?

我想将对象添加到收藏夹。在这种情况下,当用户按下按钮将对象添加到收藏夹时,该对象将保存到Realm。然后他按下按钮从收藏夹中删除该对象,该对象将被删除。随后,他又按下了保存按钮,应该是又保存了。可用吗?当我按两次保存按钮时,它说Terminatingappduetouncaughtexception'RLMException',reason:'Objecthasbeendeletedorinvalidated.'代码如下。funcdelete(){realm.write({self.realm.delete(obj)})}funcsave(){realm.write({self.rea

ios - Realm 数据库对象似乎是空的,但事实并非如此

我正在使用Realm对于一个小而简单的项目。我正在使用最新版本的框架(昨天从Github编译)和当前AppStore版本的XcodewithSwift2.1。我正在通过prepareForSegue()中的segue将一个Realm数据库对象从一个ViewController移交给另一个ViewController,以便对其进行编辑(并填写当前值)。不知何故,目标ViewController中的对象似乎有问题。当我简单地print()目标ViewController中的对象时(在viewDidLoad()或我计划在其中使用它的任何方法中),该对象是正确的在控制台中显示如下:Object

ios - 如何使用 realm swift 检索另一个对象列表中的对象?

我有一些像这样的Realm类:classFriends:Object{dynamicvarname=truedynamicvarrole=truedynamicvartype=truedynamicvarowner:Profile?}classProfile:Object{dynamicvaruuid=NSUUID().UUIDStringdynamicvarname=""dynamicvardate=NSDate(timeIntervalSinceNow:1)dynamicvarsection=0dynamicvarcode=""dynamicvargender=0dynamicva

swift - 具有惰性属性的 Realm 中的复合键

我找到了在Swift中使用Realm和复合主键的绝佳解决方案:https://github.com/realm/realm-cocoa/issues/1192publicfinalclassCard:Object{publicdynamicvarid=0{didSet{compoundKey=compoundKeyValue()}}publicdynamicvartype=""{didSet{compoundKey=compoundKeyValue()}}publicdynamiclazyvarcompoundKey:String=self.compoundKeyValue()publ

swift - 在 Realm 数据库中保存一个 CLLocationCoordinate2D 数组

我正在编写一个基于位置的应用程序,我需要在我的Realm模型中保存一个CLLocationCoordinate2D数组。最好的方法是什么?我应该为坐标定义一个新的模型对象并使用List来保存该数组还是有更好的方法? 最佳答案 正如您所说,最好的方法是创建您自己的模型来存储坐标。您可以将类命名为Location这将是CLLocationCoordinate2D的模型和其他Realm对象可以使用List持久化它或者只是Location.定义Location类:classLocation:Object{dynamicvarlatitude

ios - 如何将索引为 0 的项目插入到 Realm 容器中

有没有办法将0索引处的新项目插入到Realm容器中?我在Realm类中没有看到插入方法。我需要使用List吗?如果答案是肯定的,我如何重构以下代码以能够使用List并使List与Realm容器保持同步。换句话说,我很难想出一种在添加和删除时保持Realm容器和List具有相同项目的好方法。在下面的代码中,新项目在最后一个索引处输入。我怎样才能重组它以便能够在0索引处插入项目?模型类importRealmSwiftclassItem:Object{dynamicvarproductName=""}主视图Controllerletrealm=try!Realm()varitems:Resu

ios - 排除 Realm 模型类

我的应用程序中配置了两个Realm文件。我想将我的Log模型存储到与其余模型不同的单独文件中。我的问题是我还在我的默认Realm文件中看到了我的Log模型类,这是我不想要的。如何从给定的Realm文件中排除特定的模型类?我对主Realm文件使用默认配置,我只想将Log模型存储在另一个数据库文件中,但是当我在default.realmRealmBrowser它还显示了Log模型。 最佳答案 您可以通过objectTypespropertyonRealm.Configuration显式列出给定Realm可以存储的类:letconfigA

swift - 了解 Realm 中的迁移 - Swift

我正在尝试了解迁移,有人可以描述需要迁移的情况吗?例如,让我们假设一个应用程序已经发布并使用了以下Realm对象,但现在需要发布版本2和一个新的Realm对象被添加到这个新版本,我需要迁移吗?版本1importFoundationimportRealmSwiftclassItem:Object{dynamicvarproductName:String=""dynamicvarcreatedAt=NSDate()}importFoundationimportRealmSwiftclassItemList:Object{dynamicvarlistName=""dynamicvarcrea

swift - Realm 提交写入错误 - 无法提交不存在的写入事务

我正在尝试向Realm数据库表中添加一条记录。我有一个Connection类,它代表我在我的数据库中需要的一个表,并创建了代表列的动态变量:importFoundationimportRealmSwiftimportRealmopenclassConnectionState:Object{opendynamicvar_id:String=NSUUID().uuidStringopendynamicvara:String=""opendynamicvarb:String=""opendynamicvarc:Int=0openoverrideclassfuncprimaryKey()->S

xcode - Realm - 模块文件是由旧版本的编译器创建的

我使用最新版本的xcode和swift2.2。我的一个项目,由于错误,我几个月没有打开现在没有构建模块文件是由旧版本的编译器创建的我尝试了以下方法从项目中删除Realm框架,然后从realm.io下载最新版本并将新框架复制到项目使用REALM_SWIFT_VERSION=2.2从github源通过build.shbuild构建Realm并添加到项目这些都没有帮助,仍然有错误。有什么建议吗? 最佳答案 您可以尝试以下操作吗?删除派生数据清理构建文件夹(在按住Option键的同时单击Xcode的Product菜单,然后选择CleanBu