Android Parse.com上的一对多关系

Android Parse.com上的一对多关系,android,one-to-many,parse-platform,Android,One To Many,Parse Platform,我在Parse.com上有两个类:Image和User。在用户类中,我保存了三个字段:姓名、手机号码和职业。在图像类中,我正在保存图像 我必须在这两个类之间创建一对多的关系,这样我就可以用相应的手机号码获取图像 我在parse.com上创建了User类和Image类之间的关系,在User类中有一个名为Mobile的列。无法找到如何获取具有一对多关系的特定手机号码的图像。请帮助我,因为我已经看完了文档。提前谢谢 这只是一段代码。你必须考虑周到地组织你的课程。我不确定您打算怎么做,但就编码而言,以下

我在Parse.com上有两个类:Image和User。在用户类中,我保存了三个字段:姓名、手机号码和职业。在图像类中,我正在保存图像

我必须在这两个类之间创建一对多的关系,这样我就可以用相应的手机号码获取图像


我在parse.com上创建了User类和Image类之间的关系,在User类中有一个名为Mobile的列。无法找到如何获取具有一对多关系的特定手机号码的图像。请帮助我,因为我已经看完了文档。提前谢谢

这只是一段代码。你必须考虑周到地组织你的课程。我不确定您打算怎么做,但就编码而言,以下内容应该会有所帮助

首先获取当前用户

ParseUser currentUser = ParseUser.getCurrentUser();
因为在用户表中有“mobile”列作为关系,所以首先获取关系。 像这样

ParseRelation<ParseObject> relation = currentUser
                                    .getRelation("mobile");
ParseRelation=currentUser
.getRelation(“移动”);
一旦获得了关系,就可以查询需要的对象。在您的例子中,它是图像对象

ParseQuery<ParseObject> query = relation.getQuery("Image");
ParseQuery=relation.getQuery(“图像”);
从这里,您可以自定义查询。例如:

query.getFirstInBackground(new GetCallback<ParseObject>() {
  public void done(ParseObject, ParseException e) {
    if(e == null)
    //your code
    //List<ParseFile> pFileList = (ArrayList<ParseFile>) object.get("images"); //something like this just to give an idea
  }
query.getFirstInBackground(新的GetCallback(){
公共void完成(ParseObject,parsee异常){
如果(e==null)
//你的代码
//List pFileList=(ArrayList)object.get(“images”);//类似这样的内容只是为了给大家一个想法
}
}))

或者,如果有多个对象,请使用

query.findInBackground(new FindCallback<ParseObject>() {
    public void done(List<ParseObject> list, ParseException e) {
        if (e == null) {
            for (ParseObject object : list) {

                ParseFile image = (ParseFile) object.get("images_column_name");

            }
        } 
    }
});
query.findInBackground(新的FindCallback(){
公共作废完成(列表,异常解析){
如果(e==null){
for(ParseObject对象:列表){
ParseFile image=(ParseFile)object.get(“images\u column\u name”);
}
} 
}
});

如果一个
图像
类只有一个与其相关的
用户
,只需使用引用属性即可。你可以称它为
owner
user
或其他任何名称。然后只需将其设置为当前用户(或任何其他用户)

内部解析将只存储这个对象的ID和一些额外的信息,以使其成为指向另一个类的链接

查询时,只需使用当前用户(或任何其他用户)与该属性进行比较。同样,Parse将在内部比较ID,您不必考虑它

看这张照片。请参见它在何处将
注释的
父属性设置为
Post
的实例?这就是你想做的事情


使用手机号码进行链接是一个坏主意,因为如果您更改了
用户的号码
,那么所有使用该号码的
图像
类现在都是孤立的,除非您编写额外的代码来处理此问题。

@advitya Abrol,刚刚编辑了答案。这里有个错误..而不是ParseQuery=ParseQuery.getQuery(“图像”);它是ParseQuery=relation.getQuery(“图像”);此外,@Timothy Walters answer可能会帮助您了解如何构建数据存储。thanx。。如果我们有默认的用户类,这是可行的。但我现在用数据编辑了表名,以避免混淆。它不适用于定制的桌子。希望你得到它!!请不要编辑问题以形成完全不同的问题。我发布的答案是针对你之前提出的问题。你似乎把它编辑成了另一个不同的问题,然后又发布了同一个问题。。。这会造成混乱!很抱歉,我是新来的。我是否应将更改恢复到原始问题??