Realm.objects() returns empty objects

蹲街弑〆低调 提交于 2020-01-14 18:54:42

问题


My class has all properties as dynamic but still when retrieving them from realm i get a collection of empty objects, and check the realm db with the realm browser and the data is there, this is my class:

class ProjectEntity: Object {

    /**
    Property: All properties of the ProjectEntity 
    **/
    dynamic var ProjectId = 0
    dynamic var ProjectTitle = ""
    dynamic var ProjectSubtitle = ""
    dynamic var ProjectType = ""
    dynamic var ProjectClass = ""
    dynamic var ProjectCoordinates = ""
    dynamic var ProjectGraphType = ""
    dynamic var ProjectModifiedOn = NSDate(timeIntervalSince1970: 0)
    dynamic var ProjectCity = ""
    dynamic var ProjectCounty = ""
    dynamic var ProjectZip = ""

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

    func getShape() -> MapShape{
        let adapter = ProjectsJSONAdapter()
        let shape: MapShape = adapter.parseShape(id: self.ProjectId, type: self.ProjectGraphType, jsonStr: self.ProjectCoordinates)
        return shape
    }
}

here is how i'm reading the data:

    let projectsList = realm.objects(ProjectEntity)
    for project in projectsList {
        projects.append(project)//The properties in project have all their default/empty values
    }

any ideas?


回答1:


How are you retrieving the persisted ProjectEntity objects? The following code snippet should do the trick:

let entities = Realm().objects(ProjectEntity)



回答2:


first your class need to inherit RLMObject :

class ProjectEntity: RLMObject {
    ...
}

and after if you want all the ProjectEntity objects try this :

let allProjectEntityObjects: RLMResults = ProjectEntity.allObjects()

if you need some extra help you can follow this tutorial from Realm :

Building a To-Do App with Realm



来源:https://stackoverflow.com/questions/32230802/realm-objects-returns-empty-objects

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!