Payum Дублирующая запись '0' для ключа 'PRIMARY'
Я использую payumBundle для настроек платежей, но получаю эту ошибку:
Duplicate entry '0' for key 'PRIMARY'
Это мои классы, которые я использую
/**
* @ORM\Table(name="payum_tokenized_details")
* @ORM\Entity
*/
class TokenizedDetails extends BaseTokenizedDetails
{
protected $id;
/**
* @return mixed
*/
public function getId()
{
return $this->id;
}
}
/**
* @ORM\Table(name="payum_paypal_express_checkout_payment_details")
* @ORM\Entity
*/
class PaypalExpressPaymentDetails extends PaymentDetails
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @return mixed
*/
public function getId()
{
return $this->id;
}
}
Я пытался найти, но не могу найти решение, обычно это из-за первичных ключей, но все они настроены правильно
1 ответ
У сущности TokenizedDetails не должно быть поля id, поскольку есть токен (уникальный), который уже был отображен.
Посмотрите, как это определено в песочнице: https://github.com/Payum/PayumBundleSandbox/blob/master/src/Acme/PaymentBundle/Entity/TokenizedDetails.php
И отображение: https://github.com/Payum/Payum/blob/master/src/Payum/Bridge/Doctrine/Resources/mapping/TokenizedDetails.orm.xml
Обратите внимание, что поле токена определено как id.