0
我的数据模型有如下关系:核心数据 - 保存关系的技巧?
[Account] -|------o< [Transaction]
作为实现:
// in Account.h
@property (nonatomic, retain) NSSet *transactions;
// in Transaction.h
@property (nonatomic, retain) Account *account;
现在,我已经成功地创建了一个帐户并将其插入到核心数据。我的问题是,如何向帐户添加起始余额?这显然只是账户上的一项交易,但在数据模型中,以下两种方式足以实现连接(即连接newAccount.transactions
以及newTransaction.account
)?
// we need to insert a new account
Account *newAccount = [NSEntityDescription insertNewObjectForEntityForName:[Account entityName] inManagedObjectContext:self.managedObjectContext];
// . . . configure newAccount
NSNumber *startingBalance = @([self.startingBalanceTextField.text floatValue]);
NSError *error;
// save the new account
[self.managedObjectContext save:&error];
if(!error)
{
Transaction *newTransaction = [NSEntityDescription insertNewObjectForEntityForName:[Transaction entityName] inManagedObjectContext:self.managedObjectContext];
// . . . configure newTransaction
// is this sufficient & proper? Will this add newTransaction to newAccount.transactions as well?
newTransaction.account = newAccount;
// save the starting balance
[self.managedObjectContext save:&error];
}