sir*_*ius 1 php symfony doctrine-orm
我有一些问题.我有2个班:Carorder:
<?php
namespace AppBundle\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
use AppBundle\Entity\Orderdetail;
/**
* @ORM\Entity
* @ORM\Table(name="carorder")
*/
class Carorder
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue
*/
protected $id;
/**
* @ORM\OneToMany(targetEntity="Orderdetail", mappedBy="Carorder", cascade={"persist","remove"})
**/
protected $orderdetails;
//Then all the auto genereted setters and getters beneath here
Run Code Online (Sandbox Code Playgroud)
订单详情:
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
/** @ORM\Entity
* @ORM\Table(name="orderdetail")
*/
class Orderdetail
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue
*/
protected $id;
/**
* @ORM\ManyToOne(targetEntity="Carorder", inversedBy="orderdetails")
**/
protected $carorder;
/**
* @ORM\Column(type="integer")
*/
protected $amount;
//Then all the auto generated setters and getters beneath here
Run Code Online (Sandbox Code Playgroud)
我无法通过Carorder访问orderdetail.例如,这个例子,只是钍
Undefined index: Carorder
Run Code Online (Sandbox Code Playgroud)
例:
$repository = $this->getDoctrine()->getRepository('AppBundle:Carorder');
$orders = $repository->findAll();
$orderdetail = $orders[0]->getOrderdetails()->first();
Run Code Online (Sandbox Code Playgroud)
我不知道是什么导致了这个,所以我希望你们能帮助我.
lso*_*uza 10
您映射了属性,Carorder但您的属性名称是carorder,它区分大小写.
正确的映射可能是:
/**
* @ORM\OneToMany(targetEntity="Orderdetail", mappedBy="carorder", cascade={"persist","remove"})
**/
protected $orderdetails;
Run Code Online (Sandbox Code Playgroud)