【发布时间】:2020-08-01 10:11:41
【问题描述】:
我的问题是我只想获取当前用户的数据。但下面的代码正在获取我的数据库中存在的所有用户的数据。我怎样才能获取唯一且唯一的当前用户的数据。
- 这是我从 firebase 获取数据的代码(我使用的是实时数据库)。 在这个“节点名称”中是存储我的数据的字段。
class ShowDataPage extends StatefulWidget {
@override
_ShowDataPageState createState() => _ShowDataPageState();
}
class _ShowDataPageState extends State<ShowDataPage> {
List<myData> allData = [];
@override
void initState() {
DatabaseReference ref = FirebaseDatabase.instance.reference();
ref.child('node-name').once().then((DataSnapshot snap) {
var keys = snap.value.keys;
var data = snap.value;
allData.clear();
for (var key in keys) {
myData d = new myData(
data[key]['name'],
data[key]['message'],
data[key]['profession'],
);
allData.add(d);
}
setState(() {
print('Length : ${allData.length}');
});
});
}
- 这是我以“节点名称”的名义将数据上传到 Firebase 的代码。此代码存储在另一个文件中,并且还有另一个必要字段,但这是将我的数据上传到 firebase 的字段。
_sendToServer() {
if (_key.currentState.validate()) {
_key.currentState.save();
DatabaseReference ref = FirebaseDatabase.instance.reference();
var data = {
"name": name,
"profession": profession,
"message": message,
};
ref.child('node-name').push().set(data).then((v) {
_key.currentState.reset();
});
} else {
setState(() {
_autovalidate = true;
});
}
}
- 我在 firebase 中的数据库如下所示。
【问题讨论】:
标签: firebase flutter firebase-realtime-database dart firebase-authentication