2012-06-19 5 views
3

엔티티에 cahmps를 추가하려고합니다. 이 메시지 렌더링Symfony2 엔티티에 필드를 추가하는 방법

php app/console doctrine:schema:update 
php app/console doctrine:schema:update --dump-sql 
php app/console doctrine:schema:update --force 

: yopur 데이터베이스를 업데이트 할 수

아무것도 현재 엔티티 메타 데이터와 동기화 이미

/** 
* @var integer $colorevent 
* @ORM\Column(name="colorevent", type="integer") 
*/ 
private $colorevent; 

/** 
* Get colorevent 
* @return integer 
*/ 
public function getColorevent() 
{ 
    return $this->colorevent; 
} 

/** 
* Set colorevent 
* @return integer 
*/ 
public function setColorevent($colorevent) 
{ 
    return $this->colorevent = $colorevent ; 
} 

내가이 명령을 실행 :이 코드가

필드를 en 티티?

답변

1

각 개체는 나는 또한 엔티티를 생성하기 위해 제공 콘솔 도구를 사용하는 것이 좋습니다 것 Entity 주석

use Doctrine\ORM\Mapping as ORM; 

/** 
* @ORM\Entity 
*/ 
class MyEntity 
{ 
    // some code 
} 

이 있어야합니다.

app/console doctrine:generate:entity 

자세한 내용은 공식 책 (Doctrine, Propel)를 읽어 보시기 바랍니다.

+0

예 I 시도를하지만 나는이 시도했다 같은 probleme –

2

처음 엔 엔티티 클래스를 어떻게 생성 했습니까?

그것은 개체 파일은 당신이해야 할 일을 다음 doctrine:generate:entities를 통해 생성 된

은 다음과 같습니다

  1. 갱신 xxxx는 엔티티 이름입니다 Resources/config/doctrine/XXXXXXXXX.
  2. run app/console doctrine:generate:entity. 이렇게하면 PHP 엔티티 파일과 개인 속성 인 getter 및 setter가 다시 생성됩니다.
  3. 실행 php app/console doctrine:schema:update 및 업데이트 DB

당신이 (내가 YML을 사용하고 있습니다)하지만 결론은 doctrine:schema:update 필요가 전류의 변화를 찾을 수 있다는 것입니다 사용하는 형식의 따라 약간의 변화가있을 수 있으며, 캐시 된 (메타 데이터) 엔티티 개체.

+0

하지만 나도이 작업을 가져올 수 없습니다. 본질적으로 Entity에 대한 변경 사항을 선택하지 않습니다. (예 : null 허용 필드를 허용하도록 db의 열을 변경하고 "아무것도 변경되지 않았습니다"화면을 렌더링합니다) –

0

다른 두 개의 대답에 설명 된대로 yaml이나 주석을 사용하는 경우 doctrine 명령을 사용할 수 있습니다. 이 명령은 엔티티 이름이 포함되어야하지만 :

php app/console doctrine:generate:entities AcmeMyBundle:Customer 
관련 문제