微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从 Flutter 中的 Hive 框中过滤和排序记录

如何解决从 Flutter 中的 Hive 框中过滤和排序记录

我使用带有 Flutter 的 Hive 将带有键的联系人存储为字母数字字符串,每个联系人数据都是一个带有时间戳的地图

方框行 =

Key.     => Value  
'abc123' => {'name': 'JK','country':'GB','timestamp': '568'},'etergb' => {'name': 'FS','country':'DE','timestamp': '425'}
'546hfg' => {'name': 'TD','timestamp': '687'}

现在可以使用 where country=GB 条件过滤这些并按 map.item.timestamp ASC/DESC 对行进行排序

解决方法

对于过滤,您可以使用 For 循环或 Map。

您可以执行排序。下面是一个例子。

var items = box.values.toList();
items.sort((a,b) => a.name.compareTo(b.name));


@HiveType(typeId: 0)
class CategoryModel extends HiveObject {
  @HiveField(0)
  String id;

  @HiveField(1)
  String name;

  //...
  
  CategoryModel(this.id,this.name);
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。