所以用户可以添加项目,其他用户也可以看到和编辑他们,但我只希望同一公司或组的用户看到他的项目明显.所以我确实有一个StreamBuilder,它可以流传输一个Firebase数据库的任务,但现在每个人都可以看到每个人的任务,我如何为用户公司添加判断? 它在创建任务时也需要此判断,因此当我创建它时,我希望它保存它创建的公司(如果这是有意义的).

如果有人能帮我解决这个问题,那就太好了

我希望它像现在一样创建用户创建的任务,但我必须向它添加公司或组判断.

推荐答案

for each 用户和任务添加‘group’字段.

例如,当您创建用户时

final uid = "userID123";

final usersRef = FirebaseFirestore.instance.collection("users");
    
final user1 = <String, dynamic>{
   "name": "john doe",
   "idNo": 128101,
    ...
   "group": "developer",
};
    
usersRef.doc(uid).set(user1);

并创建一个任务

final taskID = "taskID123";

final taskRef = FirebaseFirestore.instance.collection("users");
        
 final task1 = <String, dynamic>{
    "name": "refactoring",
     ...
    "group": "developer",
 };
        
    taskRef.doc(taskID).set(task1);

然后,当您 for each 用户传输任务时,根据用户所属的组使用查询筛选任务

final taskGroupStream =
    FirebaseFirestore.instance.collection("cities").where("group", isEqualTo: user1['group']).snapshots();

在您的StreamBuilder小部件中使用该流.

希望它能帮上忙!

Flutter相关问答推荐

为什么在Flutter中使用firebase数据库时获取引用时会划掉引用?

如何更改ElevatedButton的 colored颜色 以按下它?

build_runner显示错误没有为类ClassDeclaration定义getter宏关键字'

更改BottomNavigationBar onTap?的大小

如何将Will POP示波器转换为POP数据抖动的POP示波器

Android上火焰瓷砖之间的线条飘动

如何正确处理Flutter 翼中使用火基时发生的碰撞?

如何在Date Time类中只显示日期?

Supabase Auth:重定向到 Google.com 而不是我的应用程序

Flutter:如何在 Future 函数上添加网络判断和 showDialog

Flutter中如何实现带有变化图标的浮动操作按钮?

用户文档 ID 与 Firestore 中的用户 ID 相同

转换函数上传文件上传Uint8List

Container 的 Flutter 背景图片不会出现

状况不佳 - Cubit

Pub get 尚未运行

我正在try 使用 Firebase 在 Flutter 中使用 Google 注销,但它不起作用

Flutter 中的无效日期格式 2022 年 11 月 14 日

NoSuchMethodError:方法 '[]' 在 null 上被调用.我的信息流中的错误

Flutter Desktop,如何获取windows用户配置文件名称?