如何引用Firebase实时数据库对象的唯一键,然后更新本地存储的bool值?- Flutter

fnatzsnv  于 2023-03-13  发布在  Flutter
关注(0)|答案(1)|浏览(95)

我想从我的数据库(Firebase Realtime)引用一个特定对象,并更改该特定对象的键和bool值(使用;键)...但是bool值存储在本地,所以很难引用数据库和本地存储的bool。下面是一张图片,以便更好地理解:Representaion
以下是为数据库中的每个对象指定的唯一键:

dataB['key'] = snapshot.value;
//the dataB is the name of the Database so here I'm referencing it

和bool值(连接)代码:

bool joined = false;
//Extra info: I am storing this bool using Shared Preferences

我想要的是,当我按下一个按钮时,它应该将bool值更改为true,但它应该只更改特定的键:

onPressed: () {
   isJoined = true;
//when I print what it is referencing here it is referencing 
//EVERYTHING in the database [this is the problem!!]
//How do I reference just one specific key?
}

现在,我想更改数据库中的特定对象,并给予默认的bool值false,当我单击按钮时,它应该将bool值更改为true,并且它应该将该bool值存储在本地,但它应该只是数据库中的唯一对象。
我尝试过的:我想给数据库中的每个对象添加一个特定的id,这样我就可以像这样引用它,但是已经有一个唯一的键给每个对象,所以我最终没有这样做,但是如果这样更好,请让我知道。我不知道如何搜索这个,所以我不能真正检查互联网。我也试图要求ChatGPT,但没有帮助。

km0tfn4u

km0tfn4u1#

当我引用数据库的布尔值并通过按钮(onPressed函数)从我的应用程序中将其更改为true或false时,它会在本地更改,但不会更改我的数据库中的值...这正是我想要的,结果是它会自动完成(因此我不必做所有这些额外的工作)...所以问题从一开始就得到了解决...

相关问题