2
아래 엔 정의를 볼 수있는 유형 및 자산이 2 개 있습니다. (: 고양이-158 또는 개-15 등)Doctrine2 결합/결합 된 엔티티 특성
난 그냥했습니다 내가 Type->name
과 Asset->id
의 연결 인 자산 이름을 생성 할 필요가 내 웹 응용 프로그램에 자산의 목록을 표시하기 위해
형식 이름을 반입하고 자산 ID와 조인하는 자산 실체에 getName()
메소드를 추가했습니다. 애셋을 가져올 때 조인 문을 사용하여 이름이 만들어 지도록 주석으로이 작업을 수행하는 방법이 있습니까? 기본적으로 getName()
에 전화 할 때 유형을 가져 오지 않고 자산을 가져올 때 적절한 이름/id 조합으로 채워지는 자산 실체의 속성?
<?php
class Asset
{
/**
* @ORM\Id
* @ORM\GeneratedValue("IDENTITY")
* @ORM\Column(type="integer")
* @var integer
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity="\Type")
* @var \Type
*/
private $type;
/**
* Constructs a name from the type and id
* @return string
*/
public function getName()
{
return $this->getType()->getName() . '-' . $this->getId();
}
// SNIP ...
}
class Type
{
/**
* @ORM\Id
* @ORM\GeneratedValue("IDENTITY")
* @ORM\Column(type="integer")
* @var integer
*/
private $id;
/**
* @ORM\Column(type="string", length=200, unique=true, nullable=false)
* @var string
*/
private $name;
// SNIP ...
}
진심으로 유형을 확장? 의미 적으로나 프로그램 적으로도 의미가 없습니다. 자산은 유형이 아니며 엔티티가 서로 확장해야합니다. – ChrisR