我是 Parse.com BaaS 的初学者。
我正在考虑如何UITableViewCell
从两个通过指针连接的表中显示一个数据。我有一个名为“PackageItems”的表,其中包含以下列:-objectId、packageId、productId、price。在名为“SIZES”的第二个表中,我存储具有以下属性的数据:objectId、packageItemsId、数量和 sizeTypeId。在名为“SIZE_TYPES”的第三个表中,我有一个名为:-objectId & typeName 的列。我通过 SIZES 表中的指针连接这三个表,如下所示: packageItemsId -> POINTER -> 目标类-> PACKAGE_ITEMS sizeTypeId -> POINTER -> 目标类 -> SIZE_TYPES
之后,我创建了一个查询,该查询返回通过指针 packageItemsId 连接到 PackageItems 的每个 Sizes 作为结果。
-(PFQuery *)queryForTable
{
PFQuery *query = [PFQuery queryWithClassName:@"Size"];
PFObject *packagedItem = [PFObject objectWithoutDataWithObjectId:@"SxtIpSJ64t"];
[query whereKey:@"packageItemsId" equalTo:packagedItem];
}
在该cellForRowAtIndexPath
方法中,我在如下所示的 Sizes 表中显示数量,UITextField
并且我尝试从表 SIZE_TYPES 中显示 typeName
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath object:(PFObject *)object{
static NSString *simpleTableIdentifier = @"PackageCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell==nil) {
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:simpleTableIdentifier];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
UILabel *sizeLabel = [[UILabel alloc]init];
sizeLabel.text = @"HERE I WOULD LIKE TO DISPLAY VALUE OF SIZE TYPE"
sizeLabel.frame = CGRectMake(20,5,50,34);
[cell.contentView addSubview:sizeLabel];
UITextField *quantityField = [[UITextField alloc]initWithFrame:CGRectMake(245, 5, 55, 34)];
quantityField.borderStyle = UITextBorderStyleRoundedRect;
quantityField.keyboardType = UIKeyboardTypeNumberPad;
quantityField.textAlignment = NSTextAlignmentRight;
quantityField.text = [object objectForKey:@"quantity"];
[cell.contentView addSubview:quantityField];
UILabel *quantityLabel = [[UILabel alloc]init];
quantityLabel.textAlignment = NSTextAlignmentRight;
quantityLabel.text = @"Quantity:";
quantityLabel.frame = CGRectMake(170, 5, 70, 34);
[cell.contentView addSubview:quantityLabel];
}
return cell;
}
我知道查询只能返回一个类的值。我还尝试创建返回 SIZE_TYPES 的第二种方法,但在我看来我做错了。我读过可以通过使用方法'include'来完成对两个表的收费,但不知道如何去做。我还听说过云代码。也许我应该使用关系并稍微更改我的数据库模式。请寻求任何明智的解决方案。