2017-05-16 6 views
0

Symfonyフレームワークで生成されたエンティティにはIDフィールドがありますが、このフィールドにはセッター(setID())がありません。したがって、永続性およびフラッシュ後のデータベースへのIDフィールドの最初のエントリは '0'です。しかし、その後のエントリも '0'になります。次のデータベースへのエントリが1のような値を取得し、続いてすべてのエントリに対して1ずつ増加することを確認するにはどうすればよいですか。この問題により、整合性制約違反が発生しています。Symfonyで自動生成されたID値

+1

は持続し、フラッシュの呼び出し後に正しい値で満たされるべき。コードを表示する。 – Maerlyn

答えて

0

あなたのエンティティのIdフィールドには@Idアノテーションが必要です。これは、このフィールドが識別子/主キーであることを意味します。デフォルトでは、doctrineはAUTO戦略を使用しますが、変更することができます。 doctrine documentationをご覧ください。有効なIDの定義の

0

Exemple:

/** 
* @var int 
* 
* @ORM\Id 
* @ORM\Column(type="integer") 
* @ORM\GeneratedValue(strategy="AUTO") 
*/ 
protected $id; 
関連する問題