(我是初學者)爲什麼命令生成:doctrine:實體不會在這些類中生成方法? (逆向工程)
我想爲相關模型(OneToMany和ManyToOne)自動生成方法。我正在做下面的文檔http://symfony.com/doc/current/cookbook/doctrine/reverse_engineering.html
我在模型中添加了下面的屬性和註解(我在這裏只給出ManyToOne相關的兩個類作爲例子)並運行generate:doctrine:entities命令,沒有錯誤,沒有結果。我期望的方法像__construct和AddXXX()在Kategoria類與OnoToMany關係。
這是我添加到Kategoria類的片段。
/**
* @ORM\OneToMany(targetEntity="Ksiazka", mappedBy="kategoria")
*/
protected $ksiazki;
這是與OneToMany關係的整個Kategoria類。
#Kategoria.php
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Kategoria
*
* @ORM\Table(name="kategoria")
* @ORM\Entity
*/
class Kategoria
{
/**
* @var string
*
* @ORM\Column(name="nazwa", type="string", length=45, nullable=true)
*/
private $nazwa;
/**
* @var integer
*
* @ORM\Column(name="idKategoria", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $idkategoria;
#THESE NEXT 4 LINES I ADDED
/**
* @ORM\OneToMany(targetEntity="Ksiazka", mappedBy="kategoria")
*/
protected $ksiazki;
/**
* Set nazwa
*
* @param string $nazwa
* @return Kategoria
*/
public function setNazwa($nazwa)
{
$this->nazwa = $nazwa;
return $this;
}
/**
* Get nazwa
*
* @return string
*/
public function getNazwa()
{
return $this->nazwa;
}
/**
* Get idkategoria
*
* @return integer
*/
public function getIdkategoria()
{
return $this->idkategoria;
}
}
這是我在Ksiazka類中修改的片段。我添加了, inversedBy="ksiazki"
/**
* @var \AppBundle\Entity\Kategoria
*
* @ORM\ManyToOne(targetEntity="AppBundle\Entity\Kategoria", inversedBy="ksiazki")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="idKategoria", referencedColumnName="idKategoria")
* })
*/
private $idkategoria;
這是與ManyToOne關係的整個Ksiazka類。
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Ksiazka
*
* @ORM\Table(name="ksiazka", indexes={@ORM\Index(name="idKategoria_idx", columns={"idKategoria"})})
* @ORM\Entity
*/
class Ksiazka
{
/**
* @var string
*
* @ORM\Column(name="autor", type="string", length=45, nullable=true)
*/
private $autor;
/**
* @var string
*
* @ORM\Column(name="opis", type="text", length=65535, nullable=true)
*/
private $opis;
/**
* @var string
*
* @ORM\Column(name="cena", type="decimal", precision=10, scale=2, nullable=true)
*/
private $cena;
/**
* @var string
*
* @ORM\Column(name="obrazek", type="string", length=45, nullable=true)
*/
private $obrazek;
/**
* @var string
*
* @ORM\Column(name="wydawnictwo", type="string", length=45, nullable=true)
*/
private $wydawnictwo;
/**
* @var string
*
* @ORM\Column(name="rokWydania", type="string", length=45, nullable=true)
*/
private $rokwydania;
/**
* @var string
*
* @ORM\Column(name="isbn", type="string", length=45)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $isbn;
// Było. Automatycznie wygenerowane bez inversedBy.
// /**
// * @var \AppBundle\Entity\Kategoria
// *
// * @ORM\ManyToOne(targetEntity="AppBundle\Entity\Kategoria")
// * @ORM\JoinColumns({
// * @ORM\JoinColumn(name="idKategoria", referencedColumnName="idKategoria")
// * })
// */
// private $idkategoria;
/**
* @var \AppBundle\Entity\Kategoria
*
* @ORM\ManyToOne(targetEntity="AppBundle\Entity\Kategoria", inversedBy="ksiazki")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="idKategoria", referencedColumnName="idKategoria")
* })
*/
private $idkategoria;
/**
* @ORM\OneToMany(targetEntity="Zamowienie_Produkt", mappedBy="ksiazka")
*/
protected $zamowienie_produkty;
/**
* Set autor
*
* @param string $autor
* @return Ksiazka
*/
public function setAutor($autor)
{
$this->autor = $autor;
return $this;
}
/**
* Get autor
*
* @return string
*/
public function getAutor()
{
return $this->autor;
}
/**
* Set opis
*
* @param string $opis
* @return Ksiazka
*/
public function setOpis($opis)
{
$this->opis = $opis;
return $this;
}
/**
* Get opis
*
* @return string
*/
public function getOpis()
{
return $this->opis;
}
/**
* Set cena
*
* @param string $cena
* @return Ksiazka
*/
public function setCena($cena)
{
$this->cena = $cena;
return $this;
}
/**
* Get cena
*
* @return string
*/
public function getCena()
{
return $this->cena;
}
/**
* Set obrazek
*
* @param string $obrazek
* @return Ksiazka
*/
public function setObrazek($obrazek)
{
$this->obrazek = $obrazek;
return $this;
}
/**
* Get obrazek
*
* @return string
*/
public function getObrazek()
{
return $this->obrazek;
}
/**
* Set wydawnictwo
*
* @param string $wydawnictwo
* @return Ksiazka
*/
public function setWydawnictwo($wydawnictwo)
{
$this->wydawnictwo = $wydawnictwo;
return $this;
}
/**
* Get wydawnictwo
*
* @return string
*/
public function getWydawnictwo()
{
return $this->wydawnictwo;
}
/**
* Set rokwydania
*
* @param string $rokwydania
* @return Ksiazka
*/
public function setRokwydania($rokwydania)
{
$this->rokwydania = $rokwydania;
return $this;
}
/**
* Get rokwydania
*
* @return string
*/
public function getRokwydania()
{
return $this->rokwydania;
}
/**
* Get isbn
*
* @return string
*/
public function getIsbn()
{
return $this->isbn;
}
/**
* Set idkategoria
*
* @param \AppBundle\Entity\Kategoria $idkategoria
* @return Ksiazka
*/
public function setIdkategoria(\AppBundle\Entity\Kategoria $idkategoria = null)
{
$this->idkategoria = $idkategoria;
return $this;
}
/**
* Get idkategoria
*
* @return \AppBundle\Entity\Kategoria
*/
public function getIdkategoria()
{
return $this->idkategoria;
}
}