【问题标题】:How to query a user Pointer<_user> field using Parse.com with Android如何使用 Parse.com 和 Android 查询用户指针<_user> 字段
【发布时间】:2014-12-28 18:48:15
【问题描述】:

这个查询真的很吃力,我想做的就是通过我的例程表运行查询,选择属于某个用户的例程。运行普通查询需要一些东西 query.whereEqualTo("routineIcon", "1") 会调出第一行和第三行。然而,棘手的一点是查询用户 (Point<_user>) 字段,这是对来自 User 类的用户 (objectId) 的引用。最初我尝试了 query.whereEqualTo("user", "RE1bvmzyPk"),但结果是空白的,所以我研究了查询指针,我尝试了一些方法,但无法让它工作。有人有什么建议吗?

private void retrieveRoutines() {
    ParseQuery<ParseObject> query = ParseQuery.getQuery("Routine");
    query.whereEqualTo("user", "RE1bvmzyPk");
    query.findInBackground(new FindCallback<ParseObject>() {
        @Override
        public void done(List<ParseObject> routines, ParseException e) {
            if (e==null){
                mRoutines = routines;
                String[] routineNames = new String[mRoutines.size()];
                int i = 0;
                for (ParseObject routine : mRoutines) {
                    routineNames[i] = routine.getString("routineName");
                    Log.d("OK", routineNames[i]);
                    i++;
                }


            }

            else {
                //error
            }
        }
    });
}

例程类的格式为:

objectId(字符串)|例程图标(字符串) |例程名称(字符串)|用户(指针<_user>

【问题讨论】:

    标签: java android parse-platform


    【解决方案1】:

    可以使用用户的objectid创建用户指针

    ParseUser user=new ParseUser();
    user.setObjectId("RE1bvmzyPk");
    
    ParseQuery<ParseObject> query = ParseQuery.getQuery("Routine");
    query.whereEqualTo("user", user);
    query.findInBackground(new FindCallback<ParseObject>() {
        @Override
        public void done(List<ParseObject> routines, ParseException e) {
            if (e==null){
    
    
    
            }
    
            else {
                //error
            }
        }
    });
    

    【讨论】:

      【解决方案2】:

      如果您想要指向(由用户创建)的例程

      将指针字段添加到例程中:

      “createdBy”类型=指针

      然后使用 User Obj 查询它。

        ParseQuery<ParseObject> query = ParseQuery.getQuery("Routine");
          query.whereEqualTo("createdBy", $userObj);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-04-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多