2015-12-17 60 views
2

只是想知道,我如何将列表转换为结果?隐藏领域列表到领域结果

原因我正在过滤区域和区域,当用户选择区域时,区域应该只显示区域中的那些区域。当我将我的区域设置为定义为var areas: Results<Area>!的变量时,出现编译错误

无法指定'List'类型的值来键入'Results!'

我的代码如下

if let regionString = self.selectedRegionString { 
    let region = self.realm.objects(Region).filter("name = '\(regionString)'").first 
    self.areas = region!.areas //this line is the problem 
} else { 
    self.areas = self.realm.objects(Area) 
} 

回答

4

我想你应该定义你的self.areas

var areas: List<Area> 

应该具有相同的模型类

Results用于领域的查询返回值。

+0

如果我将其更改为列表那么else {}子句将产生编译错误,说明结果不能列出 – Happiehappie

+0

并且它是正确的。在'else {}'你正在查询并接收'Results'类。您应该手动将其转换为列表。 –

+0

你也可以使用'RealmCollectionType'。更多信息在这里http://stackoverflow.com/questions/33363972/realm-resultst-als-listt –