2012-06-15 3 views
2

Symfony2는 엔티티 필드를 기반으로 자동 __toString() 생성을 갖습니까? 아니면 Java Roo와 비슷한 __toString()을 생성해야한다고 말하는 주석이 있습니까?symfony2 __toString() generation

+0

나는 그런 시스템에 대해 들어 본 적이 없다. –

+0

그런 것은 없습니다 (적어도 나는 하나를 알지 못합니다). 직접'__toString()'메소드를 구현해야한다. – Sgoettschkes

답변

1

annotations reference에서 이러한 기능을 찾을 수 없으며 객체에 __toString()을 정의하면 Google 그룹 간의 합의가 뒤집어 진 것 같습니다.

Net Beans와 같은 IDE를 사용하는 경우 간단한 CTRL+SPACE 바로 가기 키와 클릭으로 자동으로 __toString()이 생성되므로 간단히 __toString()을 생성하면됩니다. 목적.

또한 한 걸음 더 나아가 엔티티 템플리트 (Net Beans에서 수행하는 것)를 정의 할 수 있습니다. 이런 식으로 뭔가가 Doctrine2이 예제 내 ORM 염두에두고, 당신에게 시간을 절약 할 수 있고, 나는 나의 실체를 정의의 주석 방법을 사용

<?php 

namespace Foo\BarBundle\Entity; 

use Doctrine\ORM\Mapping as ORM; 
//use Doctrine\Common\Collections\ArrayCollection; 

/** 
* @ORM\Entity 
*/ 
class ${name} 
{ 
    /** 
    * @ORM\Id @ORM\Column(type="integer") 
    * @ORM\GeneratedValue 
    */ 
    protected $id; 

    public function __toString() 
    { 
     //return $this->get(); 
    } 
} 

이 자동으로 클래스 이름을 채우고있는 ArrayCollection은 주석이를 (그래서 엔티티가 요구한다면 쉽게 추가 할 수 있습니다.) 이렇게하면 나머지 방법을 사용하여 나머지를 채울 수 있습니다. __toString();

${name}template variable in NetBeans입니다.