我的目标是一个表中的所有实体对象,以用相同的数据填充另一个表。
我想将我在卡余额表中找到的结果设置为余额表查找,按第一个表中的相同card_id查找。
我写了方法,但它抛出错误:
"在数组上调用成员函数 setBalance(("(所有对象都出错(
我得到的最接近的是:
$newBalance = null;
$existingBalances = $this->getCardBalanceRepository()->findBy(['gpsCard' => $gpsCard]);
foreach ($existingBalances as $balance) {
$id = $gpsCard->getId();
if(isset($id)) {
$newBalance = $existingBalances;
} else {
$newBalance = new Balance();
$this->em->persist($newBalance);
}
$newBalance->setBalance($balance->getBalance());
$newBalance->setCurrency($balance->getCurrency());
$newBalance->setisMain($balance->getisMain());
}
$this->em->flush();
如果它们不在数据库中,我想设置数据,如果要更新现有数据。
你需要改变
$newBalance = $existingBalances;
自
$newBalance = $balance;
因为$existingBalances是一个数组。