【发布时间】:2021-07-10 17:17:29
【问题描述】:
我想将两个集合数据合并到一个数组中并在 listView.builder 中显示结果
用户(UID、姓名、电子邮件、电话、经度、纬度),
and trips(userId, date, time, price, from, to)。
PS:这两个集合之间的关系是用户ID,
所以我想为每个元素显示一张卡片,其中包含以下详细信息:
姓名、电子邮件、电话、日期、时间、从、到。
如何实现?
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_auth/firebase_auth.dart';
class VoyagerModel {
var firestore = FirebaseFirestore.instance;
String de, vers, adress;
DateTime dateTime;
double price;
User user;
String time;
createVoyage() async {
await firestore.collection('voyages').add({
'userId': this.user.uid,
'de': this.de,
'vers': this.vers,
'date': this.dateTime,
'time': this.time,
'adress': this.adress,
'prix': this.price
});
}
}
和用户模型
import 'package:cloud_firestore/cloud_firestore.dart';
class ClientModel {
String ref = 'clients';
createUser(
{id,
int number,
String name,
String email,
double long,
double lat}) async {
await FirebaseFirestore.instance.collection('users').doc(id).set({
'userId': id,
'name': name,
'email': email,
'phone': number,
'longitude': long,
'latitude': lat
}).catchError((err) => {print(err.toString())});
}
}
【问题讨论】:
-
VoyagerModel 中的
User与ClientModel相同? -
是一样的,它们之间的关系是多对多的
标签: firebase flutter google-cloud-firestore