在我的应用中,用户将填写一个表格,然后Firebase将在10分钟后向他们发送随机文档。我不确定如何做到这一点,并且想知道是否有人可以指出我正确的方向。
感谢您的支持
答案 0 :(得分:0)
不幸的是,没有超级简单的方法可以做到这一点。最好的方法是从集合中提取所有文档,将它们随机排序,然后检索第一个文档。示例代码:
//get firestore documents from collection
QuerySnapshot qs = await Firestore.instance.collection('myCollection').getDocuments();
List<DocumentSnapshot> listedQS = qs.documents; //listed documents
var random = new Random(); //dart math
//shuffle the array
for (var i = listedQS.length - 1; i > 0; i--) {
var n = random.nextInt(i + 1);
var temp = listedQS[i];
listedQS[i] = listedQS[n];
listedQS[n] = temp;
}
DocumentSnapshot randomDocument = listedQS[0]; //the random data from firebase