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