Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何使用firebase和Flatter读取阵列数据以检索活动主题?_Arrays_Firebase_Flutter_Document - Fatal编程技术网

Arrays 如何使用firebase和Flatter读取阵列数据以检索活动主题?

Arrays 如何使用firebase和Flatter读取阵列数据以检索活动主题?,arrays,firebase,flutter,document,Arrays,Firebase,Flutter,Document,我希望在firebase中检索文档中的一系列地图(下面的“主题”)的内容,以使用flatter填充ListView 为了便于说明,我的文档结构可以简化为: 课程名称 主题(一组地图) 受试者id 受试者姓名 受试者处于活动状态 每门课程将有一份文件 我在这里是一个比较新的人,所以我试着改编在不同网站上找到的代码片段。我觉得我已经“快”到了,但还不能完全解决它 我试图理解两件事: 如何查询我的文档集合以仅查找给定课程(课程名称='我的键值')的活动主题(主题\u为\u活动==真) 如何确定

我希望在firebase中检索文档中的一系列地图(下面的“主题”)的内容,以使用flatter填充ListView

为了便于说明,我的文档结构可以简化为:

  • 课程名称
  • 主题(一组地图)
    • 受试者id
    • 受试者姓名
    • 受试者处于活动状态
每门课程将有一份文件

我在这里是一个比较新的人,所以我试着改编在不同网站上找到的代码片段。我觉得我已经“快”到了,但还不能完全解决它

我试图理解两件事:

  • 如何查询我的文档集合以仅查找给定课程(课程名称='我的键值')的活动主题(主题\u为\u活动==真)
  • 如何确定给定课程的活动主题数,以便为我尝试填充的ListView设置正确的ItemCount
  • 我的代码:

     Widget _buildListItem(BuildContext context, DocumentSnapshot document) {
        return ListTile(
            title: Row(
            children: [
              Expanded(
                child: Text(
                  document['subject_name'].toString(),
                ),
              ),
              Container(
                child: Text('is active'
                ),
              ),
            ],
          ),
        );
      }
    
      @override
                  StreamBuilder(
                      stream:
                      Firestore.instance.collection('courses').where('course_name', isEqualTo: 'test course').snapshots(),
                      builder: (context, snapshot) {
                        if (!snapshot.hasData) return const Text('loading...');
                        return ListView.builder(
                          itemExtent: 80.0,
                          itemCount: itemBuilder: (context, index) => _buildListItem(
                              context, snapshot.data.documents[index])
                        );
                      }),
    
                )));
      }
    

    重新设计你的问号,使问题明显。修复了代码缩进。问题标签中的“我正在尝试”之类的内容被删除。嗨,zf007-这样更好吗?谢谢你修复代码缩进:)好多了。。。点现在在“i”上。希望你好运,有人能帮你。(来自评论)。重新设计你的问号,使问题明显。修复了代码缩进。问题标签中的“我正在尝试”之类的内容被删除。嗨,zf007-这样更好吗?谢谢你修复代码缩进:)好多了。。。点现在在“i”上。希望你好运,有人能帮你。(摘自《评论》)。