我已經做了關於核心數據關係的一個示例演示。我有一個表「用戶」,它以「一對多」關係的形式連接到另一個表「帳戶」。如何在一對多核心數據關係中獲取特定數據?
代碼
-(IBAction)savePersonData:(id)sender
{
NSManagedObjectContext *context = appDelegate.managedObjectContext;
NSManagedObject *newDevice = [NSEntityDescription insertNewObjectForEntityForName:@"Person" inManagedObjectContext:context];
[newDevice setValue:self.personName.text forKey:@"name"];
[newDevice setValue:self.personAddress.text forKey:@"address"];
[newDevice setValue:self.personMobileNo.text forKey:@"mobile_no"];
NSManagedObject *newAccount = [NSEntityDescription insertNewObjectForEntityForName:@"Account" inManagedObjectContext:context];
[newAccount setValue:self.accountNo.text forKey:@"acc_no"];
[newAccount setValue:self.accountType.text forKey:@"acc_type"];
[newAccount setValue:self.balance.text forKey:@"balance"];
NSLog(@"Saved Successfully");
[self dismissViewControllerAnimated:YES completion:nil];
}
圖片
我的問題是
我覺得這麼多的時間,但找不到合適的answer.So我張貼了這個問題第二次。
我的問題是我手動插入三人賬戶的詳細信息。
現在,我想要輸入手機號碼時爲特定人員輸入的餘額。
ex
1)輸入第一個移動號碼。應該顯示第一個人的餘額。 2)輸入第二個移動號碼。應該顯示第二個人的餘額。 1)輸入第3個手機號碼。應該顯示第三人稱平衡。
平衡校驗碼
-(IBAction)checkBalance:(id)sender
{ NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Person"];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"mobile_no = %@",self.textField.text];
[fetchRequest setPredicate:predicate];
NSError *error;
NSArray *result = [appDelegate.managedObjectContext executeFetchRequest:fetchRequest error:&error];
if(!([result count] == 0))
{
NSManagedObjectContext *managedObjectContext = appDelegate.managedObjectContext;
NSFetchRequest *newFetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"Account"];
NSMutableArray *temp = [[managedObjectContext executeFetchRequest:newFetchRequest error:nil] mutableCopy];
for (NSManagedObject *object in temp)
{
NSString *intValue = [object valueForKey:@"balance"];
NSString *alertString = [NSString stringWithFormat:@"%@",intValue];
[self displayAlertView:@"Available Balance" withMessage:alertString];
}
}
else
{
[self displayAlertView:@"Error" withMessage:@"Please Enter Valid Mobile Number That you have entered in Bank"];
}
}
圖片
輸出
我想餘額以SPE cific Person我在TextField上輸入Person Mobile No。
對不起,我有第二次問,但是可能無法解決這個核心數據關係。
謝謝。
您是否檢查過http://stackoverflow.com/questions/20157803/display-core-data-entity-records-with-relationship-1m?rq=1以及這個http://stackoverflow.com/questions/8310652/core-data-one-to-many-relationships-fetching-specific-related-entities?rq = 1 – Amanpreet
我已經che cked這兩個鏈接。謝謝 – hd1344
[如何在CoreData中匹配NSSet的對象值?](http://stackoverflow.com/questions/41372977/how-to-match-object-value-of-nsset- in-coredata) – Joshua