Firebase 关于颤振的Firestore查询
如何使用FlatterFire中的.where()执行Firestore查询?因为文档和示例没有涵盖这一点,我感到困惑。我在这里没有发现其他关于这方面的问题,所以我希望我没有问重复的问题。下面的示例仔细检查了集合“字段”中的每个文档,并筛选“种植者”。没有关于这方面的文档,但是您可以检查源代码Firebase 关于颤振的Firestore查询,firebase,google-cloud-firestore,flutter,Firebase,Google Cloud Firestore,Flutter,如何使用FlatterFire中的.where()执行Firestore查询?因为文档和示例没有涵盖这一点,我感到困惑。我在这里没有发现其他关于这方面的问题,所以我希望我没有问重复的问题。下面的示例仔细检查了集合“字段”中的每个文档,并筛选“种植者”。没有关于这方面的文档,但是您可以检查源代码 import 'package:cloud_firestore/cloud_firestore.dart'; Firestore.instance.collection('fields').where(
import 'package:cloud_firestore/cloud_firestore.dart';
Firestore.instance.collection('fields').where('grower', isEqualTo: 1)
.snapshots().listen(
(data) => print('grower ${data.documents[0]['name']}')
);
源代码:
Query where(
String field, {
dynamic isEqualTo,
dynamic isLessThan,
dynamic isLessThanOrEqualTo,
dynamic isGreaterThan,
dynamic isGreaterThanOrEqualTo,
bool isNull,
}) {..}
如果使用streambuilder,则会出现此问题
StreamBuilder<QuerySnapshot>(
stream: feed.where('uid', isEqualTo: 'aaaaaaaaaaaaa').snapshots(),
builder: (_, snapshot) {
if (snapshot.hasData) {
return Column(
children: snapshot.data.docs
.map((e) => itemGrid(
e.data()['username'],
e.data()['uid'],
e.data()['uavatarUrl'],
e.data()['imageUrl'],
e.data()['desc'],
))
.toList(),
);
} else {
print('null');
return Container();
}
}));
StreamBuilder(
流:feed.where('uid',isEqualTo:'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,
构建器:(\uux,快照){
if(snapshot.hasData){
返回列(
子项:snapshot.data.docs
.map((e)=>itemGrid(
e、 data()['username'],
e、 data()['uid'],
e、 data()['uavatarUrl'],
e、 data()['imageUrl'],
e、 data()['desc'],
))
.toList(),
);
}否则{
打印('null');
返回容器();
}
}));
Null安全代码(Dart 2.12)
由于许多类现在要么已弃用,要么已完全删除,因此将此代码用于Flatter 2.0及更高版本
QuerySnapshot snapshot=wait FirebaseFirestore.instance
.collection(“员工”)
.限额(10)
。其中(‘年龄’大于:30)
.get();
List docs=snapshot.docs;
用于(单据中的var单据){
如果(doc.data()!=null){
var data=doc.data()作为映射;
var name=data['name'];//您可以通过这种方式获取其他数据。
}
}
这很有帮助。谢谢这个插件的文档需要改进。您好,我想知道您是否可以对多个值进行“where”过滤,将多个值放入子句中。示例:如果年龄大于x,wheigh小于,等等。Jorge您不能使用不同值上的范围进行查询Hey@Jorge和其他仍在寻找多条件查询的人,我知道可以使用多个where
子句进行查询。>显示代码:@override Stream userfeed(字符串userID){return firestore.collection(path).where(“userID”,isEqualTo:userID).where(“projectID”,isEqualTo:“sc_demo_project1”).snapshots().map((snapshot){return snapshot.documents.map((doc){return UserFeedEntity(doc['projectID',doc installationID',doc['userID'],doc['feeds'].cast(),);}.toList();});}