Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何查询用户';谁的职位?_Ios_Parse Platform - Fatal编程技术网

Ios 如何查询用户';谁的职位?

Ios 如何查询用户';谁的职位?,ios,parse-platform,Ios,Parse Platform,我目前通过parse.com设置了我的系统 我试图做的是能够在tableView或pfquerytableviewcontroller中查询我的用户发布的PFObject帖子。目前,我有下面的代码,它只是说“加载…”,而不是显示他们的帖子。为什么它不显示我用户的最后帖子 这是我试图获取用户帖子的查询: - (PFQuery *)queryForTable { PFQuery *postQuery = [PFQuery queryWithClassName:@"New"]; [p

我目前通过parse.com设置了我的系统

我试图做的是能够在
tableView
pfquerytableviewcontroller
中查询我的用户发布的
PFObject
帖子。目前,我有下面的代码,它只是说“加载…”,而不是显示他们的帖子。为什么它不显示我用户的最后帖子

这是我试图获取用户帖子的查询:

- (PFQuery *)queryForTable {

    PFQuery *postQuery = [PFQuery queryWithClassName:@"New"];
    [postQuery whereKey:@"author" equalTo:[PFUser currentUser]];

    // Run the query
    [postQuery findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
        if (!error) {
            //Save results and update the table
            postArray = objects;
            [self.tableView reloadData];
        }
    }];
}
这是它的细胞:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath object:(PFObject *)object {
    // If you want a custom cell, create a new subclass of PFTableViewCell, set the cell identifier in IB, then change this string to match
    // You can access any IBOutlets declared in the .h file from here and set the values accordingly
    // "Cell" is the default cell identifier in a new Master-Detail Project
    static NSString *CellIdentifier = @"Cell";

    PFTableViewCell *cell = (PFTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[PFTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }

    // Configure the cell
    //cell.textLabel.text = [object objectForKey:self.textKey];
    //cell.imageView.file = [object objectForKey:self.imageKey];
    PFObject *post = [postArray objectAtIndex:indexPath.row];
    [cell.textLabel setText:[post objectForKey:@"title"]];

    return cell;
}
下面是我如何发布PFObject的代码:

-(IBAction)done:(id)sender {

    PFUser *user = [PFUser currentUser];

    PFObject *quoteNew = [PFObject objectWithClassName:@"New"];
    [quoteNew setObject:user forKey:@"user"];
    [quoteNew setObject:[[self quoteText] text] forKey:@"quoteText"];
    [quoteNew setObject:[[self attributionTitle] text] forKey:@"title"];

    MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
    hud.mode = MBProgressHUDModeIndeterminate;
    hud.labelText = @"Uploading";
    [hud show:YES];

    [quoteNew saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
        if (!error) {
            //[self done:self];
            [hud hide:YES];

            [self dismissViewControllerAnimated:YES completion:nil];

        } else {

             [hud hide:YES];

        }

    }];

您正试图在
queryForTable
方法中运行查询。这不是它的目的。在
queryForTable
中,您应该使用所需的约束构建查询(如您添加的author对象),然后返回查询。因此,对于您的情况:

- (PFQuery *)queryForTable {

    PFQuery *postQuery = [PFQuery queryWithClassName:@"New"];
    [postQuery whereKey:@"author" equalTo:[PFUser currentUser]];

    // Don't run the query, return it so PFQueryTableViewcontroller can use it
    return postQuery;
}
如果您想以编程方式告诉PFQueryTableViewController加载新文章,可以运行
[self-loadObjects]

注意:这仅适用于子类化PFQueryTableViewController的情况


我建议您阅读文档,它将所有内容都安排得相当好。

您正在将密钥设置为用户

[quoteNew setObject:user forKey:@"user"];
然后查询作者

[postQuery whereKey:@"author" equalTo:[PFUser currentUser]];
试试看

[postQuery whereKey:@"user" equalTo:[PFUser currentUser]];

我会在发布PFObject时添加“author”吗?我是否要更改下面的代码以添加“作者”?'PFObject*quoteNew=[pfobjectobjectwithclassname:@“New”];[quoteNew setObject:user forKey:@“user”];[quoteNew setObject:[self quoteText]text]forKey:@“quoteText”];[quoteNew setObject:[[self AttributeName]text]forKey:@“title”];'您何时尝试创建新对象?在你的问题中,你把它放在一个IBOutlet中-你想在用户点击某个东西时运行它吗?是的,当我创建对象时,我需要合并“Author”吗?