나는 두려운 도움이된다.Symfony 2 관계 문제
3 개의 엔티티가 있습니다. 도서, 카테고리 및 BookCategory - 책은 여러 카테고리를 가질 수 있으므로 다른 테이블을 사용했습니다.
BookCategory 테이블을 사용하여 책과 카테고리에 쉽게 액세스 할 수 있지만 책> 분류 카테고리로 분류하는 방법은 잘 모릅니다. 난 내 기관을 config (설정)하는 방법이나 내 DQL 원하는 결과를 실현하려 할 필요가 어떻게
class Category
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="name", type="text")
*/
private $name;
/**
* @var Category
* @ORM\ManyToOne(targetEntity="Category", inversedBy="Category")
* @ORM\JoinColumn(name="parent", referencedColumnName="id")
*/
private $parent;
class BookCategory
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var Book
* @ORM\ManyToOne(targetEntity="Book", inversedBy="BookCategory")
* @ORM\JoinColumn(name="book_id", referencedColumnName="id")
*/
private $bookId;
/**
* @var Category
* @ORM\ManyToOne(targetEntity="Category", inversedBy="BookCategory")
* @ORM\JoinColumn(name="category_id", referencedColumnName="id")
*/
private $categoryId;
/**
* @var integer
*
* @ORM\Column(name="priority", type="integer")
*/
private $priority;
class Book
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="title", type="text")
*/
private $title;
/**
* @var string
*
* @ORM\Column(name="author", type="text")
*/
private $author;
/**
* @var float
*
* @ORM\Column(name="price", type="float")
*/
private $price;
?
@TimoSta가 말한 것에 덧붙여서, 주석의'inversedBy' 속성을 올바르게 설정해야합니다. 현재 엔티티 자체가 아닌'targetEntity' 엔티티의 속성으로 설정되어야하기 때문에 오류가 발생해야합니다. – RoToRa
@ RoToRa이 작업을 수행하는 방법을 보여줄 수 있습니까? –