2011-11-02 6 views
11

私のプロジェクトでsymfony2/doctrineの単一テーブル継承を使用したいと思いますが、yaml設定の作業例は見つかりません。公式のドキュメントには注釈の設定のみが示されています。私はxmlのサンプルを見つけましたが、yamlの設定を使用したいと思います。誰かが助けて、いくつかの作業コードを共有できますか?ここで単一テーブルの継承とYamlの設定

答えて

1

an example of YAML markupです:

エンティティ設定ファイルがreferenceに応じsrc/Acme/StoreBundle/Resources/config/doctrine/<EntityName>.orm.ymlに入れるべきです。また、内蔵のコンバータ

を使用することができます:how to model inheritance in doctrine2 with yaml?

+0

Txは、私はこれを読んでいると私は今、自分のアプリケーションでYAMLマークアップを使用していますが、私は、[継承に問題があります:継承のこの例を、時間を節約するために

はYAMLに変換しましたマッピング](http://www.doctrine-project.org/docs/orm/2.1/en/reference/inheritance-mapping.html)を参照してください。 yamlのマークアップで[7.2単一テーブルの継承](http://www.doctrine-project.org/docs/orm/2.1/en/reference/inheritance-mapping.html#single-table-inheritance)の例が必要です。 –

+0

@ Krzysztof Lenda:コンバータを使用することができます:http://stackoverflow.com/questions/6265105/how-to-model-inheritance-in-doctrine2-with-yaml –

+0

ありがとうございます。このコンバータは非常に便利なツールだと思われます。以前はわかりませんでした。私は今、それを処理できると思う! –

12

オーケー内蔵のコンバータは人生を保存します。

#file: Resources/config/doctrine/Person.orm.yml 
Person: 
    type: entity 
    table: null 
    fields: 
    id: 
     type: integer 
     id: true 
     generator: 
     strategy: AUTO 
    inheritanceType: SINGLE_TABLE 
    discriminatorColumn: 
    name: discr 
    type: string 
    length: 255 
    discriminatorMap: 
    person: Person 
    employee: Employee 
    lifecycleCallbacks: { } 


#file: Resources/config/doctrine/Employee.orm.yml 
Employee: 
    type: entity 
    table: null 
    lifecycleCallbacks: { } 
+0

symfony 2.2では、クラスが手動で作成されない限り、コンソールのコマンド 'doctrine:generate:entities'によってクラスが生成されないことに注意してください。 –

関連する問題