标签: realm

在使用Android Studio创建的Flutter项目中添加Realm数据库

我正在使用 Android Studio 创建一个项目,我想将数据存储在本地。

我不想在我的数据库中使用 SQLite,我希望知道是否可以在 Flutter 项目中使用 Realm 数据库。

android realm dart android-studio flutter

1
推荐指数
1
解决办法
7850
查看次数

将 Realm 的 List<MyType> 转换为普通集合或数组

我有领域列表,其类型为:

List<MyType>...现在,如果我做这样的事情:

myList.map{$0}我得到类似的东西:

 LazyMapSequence<List<MyType>, MyType>
Run Code Online (Sandbox Code Playgroud)

但我只想得到结果[MyType]

如何得到一个正常的 Swift 数组作为结果?

realm swift realm-list

1
推荐指数
1
解决办法
704
查看次数

将字符串列表添加到 Realm 托管对象会导致应用程序在启动时崩溃

在以下代码中,添加“let Members =”声明会导致应用程序在启动时立即崩溃。

崩溃是 EXC_BAD_ACCESS 并且堆栈跟踪指向 Object.swift -> getNonIgnoredMirrorChildren

import Foundation
import RealmSwift

class GroupSyncModel : Object, Codable {
    @objc dynamic var created : String?
    @objc dynamic var name : String?
    @objc dynamic var groupId : String // Primary key
    @objc dynamic var adminUserId : String?
    @objc dynamic var adminUserName : String?
    @objc dynamic var joinedAt : String?

    let members = List<String>()

    override static func primaryKey() -> String? {
        return "groupId"
    }
}
Run Code Online (Sandbox Code Playgroud)

还有其他人遇到过这个问题吗?

realm ios swift

1
推荐指数
1
解决办法
259
查看次数

SwiftUI 返回列表&lt;ShoppingItem&gt; 的领域

我将 Realm 与 SwiftUI 结合使用并创建父子关系。我正在创建以下属性,以便它可以返回列表。我创建属性的原因是因为我想对其执行过滤和排序,稍后我将执行此操作。

 var items: List<ShoppingItem> {
        shoppingList.items
    }
Run Code Online (Sandbox Code Playgroud)

我收到一条奇怪的错误消息:

在此输入图像描述

realm swiftui

1
推荐指数
1
解决办法
625
查看次数

如何编辑和替换default.realm文件

我是Android高级开发人员,但对Realm.io来说是新手

我已经创建了模型,在其上写了数据+没有任何问题的查询.

现在我想要的是使用Realm Browser编辑数据库所以......

  • 如何提取我的测试应用程序上生成的default.realm文件进行编辑(我使用Nexus 4进行测试)?
  • 有没有办法用另一个我已经给出的default.realm替换它?我们希望与iOS开发人员一起处理相同的数据集,这实际上是我们选择使用Realm解决方案的原因,因此我们需要同步default.realm文件.

谢谢!

database android realm

0
推荐指数
1
解决办法
2790
查看次数

删除特定的Object Realm Swift

我已经浏览了Realm的文档,我已经在线查看,但没有找到解决我特定问题的方法.

这是我有的:

我的应用程序将特定信息存储到各种文件夹中,用户可以将相同的对象存储在多个文件夹中,或者是什么.

这是文件夹对象,它与项目有一对多的关系.文件夹可以存储任意数量的项目.

 class Folder: Object {

    dynamic var  name = ""
    dynamic var lastEdited = NSDate()
    dynamic var folderDescription = ""
    let items = List<ItemModel>()

}
Run Code Online (Sandbox Code Playgroud)

物品型号:

class ItemModel: Object {

    dynamic var country:String!
    dynamic var date:String!
    dynamic var title:String!
    dynamic var area:String!
    dynamic var type:String!
    dynamic var text:String!
    dynamic var registered:String!
    dynamic var id:String!
    let metamap = List<Meta>()
    let authors = List<Manu>()
    let categories = List<Category>()

}
Run Code Online (Sandbox Code Playgroud)

用户可以将多个这些项目存储在文件夹中,也可以将相同的项目添加到多个文件夹中.例如,用户可以将相同的项目添加到保存的文件夹,书签和愿望清单中.

我遇到的问题是,当用户从文件夹中删除项目时,它会从每个其他文件夹中删除它.例如,我只想从保存的文件夹中删除特定项目,但由于某种原因,它还会从书签和愿望清单文件夹中删除它.

这是我用来删除文件夹的内容:

     let folderItemToDelete = folder?.items[indexPathToDelete!]
        try! uiRealm.write { …
Run Code Online (Sandbox Code Playgroud)

database realm ios swift

0
推荐指数
1
解决办法
4086
查看次数

预测领域中的关系,检查列表是否为空

class User: Object {
    dynamic var name = ""
    let tasks = List<Task>()
}

let realm = try! Realm()
let predicate = NSPredicate(format: "tasks != nil")
users = realm.objects(User).filter(predicate)
Run Code Online (Sandbox Code Playgroud)

我需要获取保存到数据库中的所有用户,这些用户已保存任务.就像谓词所暗示的那样,每个用户必须有任务,如果用户不提取任务.显然,我提供的谓词不起作用,并且始终与消息"包含数组属性的键路径必须使用聚合操作"崩溃.无论如何,我怎么能做这个工作?

realm nspredicate ios swift

0
推荐指数
1
解决办法
903
查看次数

在Linux上重置Realm对象服务器

我可以问一下Linux中是否存在类似于Mac上的reset-server-realms.command的脚本,可以删除服务器上的所有域.实际上我需要在正式使用应用程序之前重置服务器并清理它.我尝试卸载有关Realm网站上的指南,但不知何故旧的数据仍然出现.

谢谢

linux realm

0
推荐指数
1
解决办法
734
查看次数

在macOS High Sierra上获取默认Realm时崩溃

我过早升级到macOS High Sierra犯了一个大错误。现在,只要我尝试Realm通过简单地调用来在模拟器中获取默认值let realm = try! Realm(),应用程序就会崩溃并显示以下跟踪信息。

17-09-27 00:42:12.066162+0900 Lulu[94661:1045399] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSInvocation getArgument:atIndex:]: struct with unknown contents found while getting argument at index -1'
*** First throw call stack:
(
0   CoreFoundation                      0x00000001123381cb __exceptionPreprocess + 171
1   libobjc.A.dylib                     0x0000000111c9af41 objc_exception_throw + 48
2   CoreFoundation                      0x00000001122bb549 -[NSInvocation getArgument:atIndex:] + 473
3   Foundation                          0x000000011173ba34 _NSGetValueWithMethod + 174
4   Foundation                          0x00000001116b5500 -[NSObject(NSKeyValueCoding) valueForKey:] + 284
5   Realm                               0x0000000110392709 -[RLMObjectBase valueForKey:] + …
Run Code Online (Sandbox Code Playgroud)

xcode realm ios swift macos-high-sierra

0
推荐指数
1
解决办法
332
查看次数

在写事务之外修改对象

我知道有很多与此主题相关的线程,但是我认为这有点不同,因为我不是从数据库中保存或获取对象,而且它们始终在主线程中。

我的问题很棘手,我可以在同一类中修改领域对象,但是当我将它作为参数传递给另一个时,就会出现类似的情况。我试图了解为什么会这样?它不应该发生。

'RLMException', reason: 'Attempting to modify object outside of a write transaction - call beginWriteTransaction on an RLMRealm instance first.'
Run Code Online (Sandbox Code Playgroud)

这是我的数据库结构:

  1. 持久性是一种协议,数据库中的每个对象都共享该协议。

        public protocol Persistable {
            associatedtype PropertyValue: PropertyValueType
            associatedtype ManagedObject: RealmSwift.Object
            associatedtype Query: QueryType
    
            init(managedObject: ManagedObject)
    
            func getManagedObject() -> ManagedObject
        }
    
        public typealias PropertyValuePair = (name: String, value: Any)
    
        public protocol PropertyValueType {
            var propertyValuePair: PropertyValuePair { get }
        }
    
        public protocol QueryType {
            var predicate: NSPredicate? { get }
            var sortDescriptors: [SortDescriptor] { get }
        } …
    Run Code Online (Sandbox Code Playgroud)

realm swift

0
推荐指数
1
解决办法
1548
查看次数