Мой вопрос заключается в том, что я хочу получать данные только текущего пользователя. но этот код ниже извлекает данные всех пользователей, присутствующих в моей базе данных. Как я могу получить данные только и только текущего пользователя.
- Это код, с помощью которого я выбираю данные из Firebase (я использую Realtime DataBase). в этом «имени узла» находится поле, в котором хранятся мои данные.
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}');
});
});
}
Это код, из которого я загружаю свои данные в базу данных под именем «имя-узла». этот код хранится в другом файле и имеет также другие необходимые поля, но это поле, которое загружает мои данные в базу данных.
_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;
});
}
}
Моя база данных в базе данных выглядит следующим образом.
![enter image description here](https://i.stack.imgur.com/0aY1H.png)