this 매핑 전략을 구현하려고합니다. id 및 다른 필드를 사용하여 추상 클래스를 정의했습니다. 계속해서 오류가 계속 발생합니다 :추상 클래스에 지정된 식별자/기본 키가 없습니다.
No identifier/primary key specified for Entity "AppBundle\Entity\AbstractItem". Every Entity must have an identifier/primary key. (500 Internal Server Error)
이것은 내 수업입니다. 당신이 볼 수 있듯이, 고유 식별자 $id
이
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
* @ORM\InheritanceType("JOINED")
* @ORM\DiscriminatorColumn(name="type", type="string")
* @ORM\DiscriminatorMap({"post" = "Post", "group" = "Group"})
*/
class AbstractItem
{
/**
* @var int
*
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var \DateTime
*/
protected $published;
protected $object;
protected $target;
/**
* @return mixed
*/
public function getId()
{
return $this->id;
}
}
'$ id'의 가시성을'protected'로 설정하려고 했습니까? –
Doctrine은 매핑 된 수퍼 클래스 개념을 사용하여 추상 엔티티 클래스를 처리합니다. http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/inheritance-mapping.html#inheritance-mapping – Cerad
@ JakubMatczak 도움이되지 않았다. 나는 여전히 동일한 오류가 발생했습니다 – blahblah