Flutter使用Back4app Parse SDK查询时如何只返回指定字段的数据
解决方案
在 Flutter 的 Parse SDK 中,可以通过 keysToReturn 方法指定查询仅返回需要的字段,无需额外本地裁剪,直接在查询构造阶段配置即可。
修改后的代码示例如下:
Future<List> getList(String date) async { final QueryBuilder<ParseObject> parseQuery = QueryBuilder<ParseObject>(ParseObject('UsersEaten')); parseQuery ..whereContains('eatenBy', getUsrName!) ..whereEqualTo('eatenDate', date) // 新增这一行,数组内填写你需要返回的字段名 ..keysToReturn(['eatenTitle', 'eatenCal', 'eatenFat', 'eatenProtein', 'eatenCarb']); final ParseResponse apiResponse = await parseQuery.query(); if (apiResponse.success && apiResponse.results != null) { List<dynamic>? apiRes = apiResponse.results; // 后续业务逻辑 } }
补充说明
- 默认情况下
objectId、createdAt、updatedAt三个系统字段会自动返回,不需要手动加到keysToReturn列表中 - 如果你仅需要排除少数不需要的字段,也可以用
excludeKeys方法替代,比如要排除eatenBy、eatenDate字段就写..excludeKeys(['eatenBy', 'eatenDate'])
内容的提问来源于stack exchange,提问作者Behnam
相关产品推荐
相关产品推荐

