2011-11-02 8 views
11

Chciałbym użyć w moim projekcie Dziedziczenie pojedynczego stołu dla symfony2/doktryna, ale nie mogę znaleźć żadnych roboczych przykładów z konfiguracją yaml dla niego. W oficjalnej dokumentacji przedstawiono tylko konfigurację adnotacji. Znalazłem przykłady xml, ale chcę użyć konfiguracji yaml. Czy ktoś może pomóc i udostępnić jakiś działający kod?Dziedziczenie pojedynczego stołu i konfiguracja Yaml

Odpowiedz

1

Oto an example of YAML markup: Pliki

Podmioty konfiguracyjne powinny być wprowadzane do src/Acme/StoreBundle/Resources/config/doctrine/<EntityName>.orm.yml według reference.

wbudowany konwerter również można stosować: how to model inheritance in doctrine2 with yaml?

+0

Tx, czytałem to i używam yaml znaczników w mojej aplikacji teraz, ale mam problem z [dziedziczenia Mapowanie] (http://www.doctrine-project.org/docs/orm/2.1/en/reference/inheritance-mapping.html). Potrzebuję przykładu dla [7.2 dziedziczenia pojedynczej tabeli] (http://www.doctrine-project.org/docs/orm/2.1/en/reference/inheritance-mapping.html#single-table-initance) w znacznikach yaml. –

+0

@ Krzysztof Lenda: Możesz użyć konwertera: http://stackoverflow.com/questions/6265105/how-to-model-inheritance-in-doctrine2-with-yaml –

+0

Dziękuję. Ten konwerter wydaje się być bardzo przydatnym narzędziem - nie znałem go wcześniej. Myślę, że poradzę sobie teraz! –

12

Ok wbudowanym konwerterem ratuje życie.

W celu zaoszczędzenia czasu to przykład dziedziczenia przekształcony YAML:

#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

Należy zwrócić uwagę, że w symfony 2.2 klasy nie są generowane przez polecenie konsoli "doctrine: generate: entities", chyba że klasy są tworzone ręcznie. –