如何为android创建一个解析查询,以获取某个人所做的每条评论?

时间:2017-06-01 22:39:43

标签: java android parse-platform

您好我正在制作一个应用程序,理发师可以提交他们的日程安排(次),然后如果客户点击他们的名字,客户将会显示某个理发师提交的所有时间。让我们说理发师的名字存储在字符串" barberName"并且理发师姓名存储在"名称"列和"用户"类等等存储在"时代"柱。我怎么会得到理发师"乔纳森"(这个名字就是一个例子)的所有时间。请回答我需要编写的代码,我已经进行了查询,但它只获得了最新理发师输入的时间。几天前代码正在运行,但现在却没有。这是我的代码......

  final String name =  getIntent().getStringExtra("name");

  ParseQuery<ParseObject> query = ParseQuery.getQuery("Info");
  query.whereEqualTo("user", name);
  query.findInBackground(new FindCallback<ParseObject>() {
     @Override
     public void done(List<ParseObject> objects, ParseException e) {
          if (e == null){
              ArrayList<String> barbers = new ArrayList<String>();

              for (ParseObject object : objects){

                barbers.add(String.valueOf(object.get("times")));

              }

            ArrayAdapter arrayAdaptar = new ArrayAdapter<String>
            (Barbers.this, android.R.layout.simple_list_item_1, barbers);

            list.setAdapter(arrayAdaptar);



        }
    }
});

1 个答案:

答案 0 :(得分:0)

这里有一些可能性:是&#34;用户&#34;只是一个名字?这可能是一个糟糕的解决方案,因为多个用户可能具有相同的名称。我改为存储User的objectId或指向用户的指针。这将使这些更具有独特性。

默认情况下,查询只有100个项目的限制,因此它只会获取前100个结果。也许你遇到了极限问题?

您是否仔细检查过您实际上是在输入您希望的名字?也许您的问题是您没有正确更新它。这听起来可能是您在获取列表时设置该值,因此最后一个是名称设置的值。然而,当您点击一个时,您将使用它而不是您正在选择的Info对象上的名称。