3

エンティティに cahmps を追加しようとしています。私はこのコードを持っています:

/**
* @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 ;
}

次のコマンドを実行します。

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

このメッセージをレンダリングします:

yopur データベースを更新するものは何もなく、現在のエンティティ メタデータと既に同期されています

エンティティにフィールドを追加するにはどうすればよいですか?

4

3 に答える 3

2

初めてエンティティ クラスをどのように生成しましたか?

エンティティ ファイルが生成された場合、次のdoctrine:generate:entitiesことを行う必要があります。

  1. xxxxResources/config/doctrine/XXXXXXXXXはエンティティ名です。
  2. 実行しapp/console doctrine:generate:entityます。これにより、php エンティティ ファイル、プライベート プロパティ、getter および setter が再生成されます。
  3. DB の実行php app/console doctrine:schema:updateと更新

使用している形式 (私は yml を使用しています) によってはいくつかの変更があるかもしれませんが、最終doctrine:schema:update的には、現在のエンティティ オブジェクトとキャッシュされた (メタデータ) エンティティ オブジェクトの間の変更を見つける必要があるということです。

于 2013-01-19T22:45:24.923 に答える
1

各エンティティにはEntity注釈が必要です

use Doctrine\ORM\Mapping as ORM;

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

また、提供されているコンソール ツールを使用してエンティティを作成することもお勧めします。

app/console doctrine:generate:entity

詳細については、公式本 ( DoctrinePropel ) をお読みください。

于 2012-06-19T10:52:34.867 に答える
0

他の2つの回答で説明されているようにyamlまたは注釈を使用している場合は、 doctrine コマンドを使用できます。ただし、コマンドにはエンティティ名が含まれている必要があります。

php app/console doctrine:generate:entities AcmeMyBundle:Customer
于 2014-04-20T15:50:47.820 に答える