• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 如何在 ios 中使用 parse 执行 PFRelation 查询

[复制链接]
菜鸟教程小白 发表于 2022-12-12 12:10:08 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我在两个表之间创建了一个关系

LocationClass 表在此表中,我有一列包含位置图像与另一个表的关系,即 Assets

![这是location类图片,如果用户选择了locationName,需要获取locationImages(viewRelation)][1]

Assets 表,它包含每个关系的图像现在我的查询是如何从关系数据库中获取数据。这里如果用户选择一个位置意味着我需要为相关位置获取一组图像![这是我的 Assets 表,这里需要根据 locationClass 表中选择的位置检索图像][2]

到目前为止,我已经完成了这种格式

PFQuery *queryObj = [PFQuery queryWithClassName"LocationClass"];
sharedDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];

// Run the query
[queryObj whereKey"locationImages" equalTo:[PFObject objectWithoutDataWithClassName"Assets" objectId"aAPzhdO4w6"]];

[queryObj findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
    if (!error)
    {
        [locationArray addObjectsFromArraybjects];
        sharedDelegate.locationsArray = locationArray;
        [locationDropDown reloadData];
    }
}];

在我的位置数组中包含单个对象

<__NSArrayM 0xaee4eb0>(
<LocationClass:ZtOP9voUaknull)> {
    LocationId = WilliamsBurgId;
    LocationName = WilliamsBurg;
    locationImages = "<FRelation: 0xaf53c30>(<00000000>.(null) -> Assets)";
}
)



Best Answer-推荐答案


从 PFRelation 对象传递数据的解决方案

    // should pass the main table name

    PFQuery *query = [PFQuery queryWithClassName"LocationClass"];
    // should pass object id for the selected row
    PFObject *getImageObject = [query getObjectWithId"need to pass object id from the maintable"];


    locationImagesArray = [[NSMutableArray alloc]init];

    // To acess the data from the relation object

    PFRelation *relationObj = [getImageObject relationForKey"locationImages"];
    PFQuery *query1 = [relationObj query];
    [query1 findObjectsInBackgroundWithBlock:^(NSArray *results, NSError *error) {

        [locationImagesArray addObjectsFromArray:results];
        for (int imgCount = 0; imgCount < [locationImagesArray count]; imgCount ++) {

            PFFile *getImage1 = [[locationImagesArray valueForKey"Image"] objectAtIndex:imgCount];
            [getImage1 getDataInBackgroundWithBlock:^(NSData *imageData, NSError *error)
             {

                 if (imageData!=nil) {
                     UIImage *image = [UIImage imageWithData:imageData];
                     activityImage.image = image;

                     NSLog(@"location image output");

                     NSLog(@"location image output : %@", activityImage.image);

                 }
             }];

        }

关于ios - 如何在 ios 中使用 parse 执行 PFRelation 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26480489/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap