Flutter 使用变量值时不显示查询的Flatter Firestore
在Flatter Firestore中,使用变量时,Flutter 使用变量值时不显示查询的Flatter Firestore,flutter,google-cloud-firestore,Flutter,Google Cloud Firestore,在Flatter Firestore中,使用变量时,其中查询不显示值 Firestore.instance.collection('Schedules') .where('from', isEqualTo: widget.from) .where('to', isEqualTo: widget.to) .snapshots(); 当我试图用指定的值调用它时,它会显示项目 .where('from', isEqualTo: "Ethiop
其中
查询不显示值
Firestore.instance.collection('Schedules')
.where('from', isEqualTo: widget.from)
.where('to', isEqualTo: widget.to)
.snapshots();
当我试图用指定的值调用它时,它会显示项目
.where('from', isEqualTo: "Ethiopia")
如何解决此问题?以社区维基的形式发布,基于评论 这里的问题是在您试图比较值的变量中-
widget.to
和widget.from
-作为where
子句。您需要在查询的where
部分更改传递此变量的方式,以便确定值是否正确传递,就像现在一样,这就是问题所在
我建议您更改检查值的方式,以便确认变量在所需上下文中具有值。听起来像
小部件。from
和小部件。to
没有您期望的值。您可能希望在查询上放置断点,在调试器中运行,然后检查值。我在文本小部件中使用了它,它有一个值。。。如果有帮助的话,我会在流生成器中使用它。如果看不到这些变量的值,以及它们如何匹配数据库中的文档,我们就没有什么可以帮助的了。考虑硬编码您的过滤器值,然后再试一次。如果它没有按您期望的方式工作,则显示新代码并解释结果如何不匹配。最初有一个变量from
和to
。这些将存储用户输入的数据。因此,当我在其他类中调用这个变量时,我使用了widget.from
&widget.to
,还有一个数据库字段from
&to
。这就是为什么我在代码中使用where('from',isEqualTo:widget.from)
。上面是我的数据库结构,我使用了widget.to
&widget.from
在文本小部件中显示值,它可以工作。但当我尝试在where查询中使用它时,它不会显示任何内容。然而,这些是不同的事情。您是否尝试过使用不同的变量,在执行查询时确认了变量的上下文,等等?您能给我举个例子吗?我的应用程序做了一个下拉表单,用户从中选择并将这些数据传递到下一个页面(这是firestore页面)。那么我该怎么做呢?Hi@MoBix它可以是任何简单的测试,比如var from=widget。from
,只是为了执行不同的查询方式,例如,您还可以尝试将=
的isEqualTo更改为=
。请记住,SO不是为您提供解决方案或代码,而是帮助您实现解决方案,因此,社区不一定会为您提供解决问题的代码。我尝试将这些变量传递给另一个变量。它仍然无法识别var from=widget.from
中的widget
。我甚至尝试将它与initState
一起使用。