如何将PFFile转换为PFObject

时间:2014-05-11 09:07:16

标签: ios objective-c parse-platform

我正在使用Parse。我有一个PFFILE,我正在使用Query检索。我需要保存它,我发现你通常使用saveEventualy。但它并不支持PFFile。那么我怎样才能将PFFile变成PFObject呢?或者如何将图像保存为离线?这是我的代码到目前为止:

-(void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];        
    [self GetImage];
}

- (void)enteredForeground:(NSNotification*) not
{
    [self GetImage];
}

-(void)GetImage
{    
    PFQuery *query = [PFQuery queryWithClassName:@"Image"];    
    [query getObjectInBackgroundWithId:@"4tmub1uxVd" block:^(PFObject *imageObject, NSError >*error)        
    {        
        if (imageObject) {                
            PFFile *imageFile = imageObject[@"image"];               
            [imageFile getDataInBackgroundWithBlock:^(NSData *data, NSError *error) {               
                if (data) {                        
                    UIImage *image = [UIImage imageWithData:data];                       
                    if (image) {                        
                        self.imageview.image = image;                       
                    }                        
                } else {                        
                    NSLog(@"Error fetching image file: %@", error);                        
                }                    
            }];                
        } else {                
           NSLog(@"Error fetching object: %@", error);                
       }                                               
    }];

}

2 个答案:

答案 0 :(得分:1)

您无法将PFFile转换为PFObject,但您不需要。您在上面的代码中获取的Image PFObject类具有一个属性,其键为image,表示PFFile。如果您修改它,您将保存父对象,这将保存更新的文件。

答案 1 :(得分:1)

Parse最近推出了一种名为本地数据存储的新方法。它让你存储对象和文件,更新和检索它们。查看文档。

Blog Post

Documentation  这并不能完全回答你的问题,但它会实现你想要的目标!