Jestem poczatkujacy, jesli chodzi o prace z frameworkiem SF 2 i mam problem z zapisaniem obiektu do bazy danych.
Utworzylem tabele, ktora przechowuje zamowienia i jest mniej wiecej w takiej postaci:
id
order_payment_id
order_status_id
...
Fragment pliku Orders.php (entity):
/** * @Assert\NotBlank * @ORM\ManyToOne(targetEntity="Payments", inversedBy="orders") * @ORM\JoinColumn(name="order_payment_id", referencedColumnName="id", nullable=false) * */ protected $orderPaymentId; public function setOrderPaymentId(\Ml\FrontendBundle\Entity\Payments $orderPaymentId) { $this->orderPaymentId = $orderPaymentId; return $this; } public function getOrderPaymentId() { return $this->orderPaymentId; }
Probuje zapisac do bazy danych m.in. id platnosci, ale pojawia sie blad:
Catchable Fatal Error: Argument 1 passed to Ml\FrontendBundle\Entity\Orders::setOrderPaymentId() must be an instance of Ml\FrontendBundle\Entity\Payments, string given...
Fragment kodu PHP, ktory ma to realizowac:
$orderPaymentId = $request->get('pid'); $manager = $this->getDoctrine()->getManager(); $order = new Orders(); $order->setOrderPaymentId($orderPaymentId); $manager->persist($order); $manager->flush();
Bede wdzieczny za pomoc przy rozwiazaniu powyzszego problemu.