2013-09-28 3 views
1

Я использую Doctrine2 для управления моей базой данных. Когда я перечислил все команды Doctrine2, интересно, почему существуют два типа команд, которые являются такими же объяснение:Насколько различаются между доктриной: генерировать и генерировать: доктрина?

generate:doctrine:crud    Generates a CRUD based on a Doctrine entity 
generate:doctrine:entities   Generates entity classes and method stubs from yourmapping information 
generate:doctrine:entity    Generates a new Doctrine entity inside a bundle 
generate:doctrine:form    Generates a form type class based on a Doctrine entity 

и

doctrine:generate:crud    Generates a CRUD based on a Doctrine entity 
doctrine:generate:entities   Generates entity classes and method stubs from your mapping information 
doctrine:generate:entity    Generates a new Doctrine entity inside a bundle 
doctrine:generate:form    Generates a form type class based on a Doctrine entity 

Существуют ли различные между этими двумя группами?

ответ

1

Этих команды делают то же самое:

генерировать: учение: ххе команды

является псевдонимом:

доктрины: генерировать: ххх команду

Они достигают ту же цель и могут использоваться взаимозаменяемо.

Если вы посмотрите на исходный код двух команд вы выяснили больше:

  • доктрину: генерировать: объекты: (из Doctrine \ Bundle \ DoctrineBundle)

    $this 
        ->setName('doctrine:generate:entities') 
        ->setAliases(array('generate:doctrine:entities')) 
        ->setDescription('Generates entity classes and method stubs from your mapping information') 
        ->addArgument('name', InputArgument::REQUIRED, 'A bundle name, a namespace, or a class name') 
        ->addOption('path', null, InputOption::VALUE_REQUIRED, 'The path where to generate entities when it cannot be guessed') 
        ->addOption('no-backup', null, InputOption::VALUE_NONE, 'Do not backup existing entities files.') 
    
  • доктрина: генерировать: сущность (из комплекта Sensio \ Bundle \ Generator)

    $this 
        ->setName('doctrine:generate:entity') 
        ->setAliases(array('generate:doctrine:entity')) 
        ->setDescription('Generates a new Doctrine entity inside a bundle') 
        ->addOption('entity', null, InputOption::VALUE_REQUIRED, 'The entity class name to initialize (shortcut notation)') 
        ->addOption('fields', null, InputOption::VALUE_REQUIRED, 'The fields to create with the new entity') 
        ->addOption('format', null, InputOption::VALUE_REQUIRED, 'Use the format for configuration files (php, xml, yml, or annotation)', 'annotation') 
        ->addOption('with-repository', null, InputOption::VALUE_NONE, 'Whether to generate the entity repository or not') 
    

Похоже, что два пучка сверху дополняют друг друга. то есть нет доктрины: generate: entity command в DoctrineBundle, и нет доктрины: generate: entity в комплекте Generator, но они вместе дают вам полный список связанных команд. Нет никакого изобретательства колеса.

+0

Из приведенного примера вы указали 'doctrine: generate: entities' и' doctrine: generate: entity', но как различаться между 'doctrine: generate: entities' и' generate: doctrine: entities'? – lvarayut

+0

Ничего другого. похоже, что два пучка выше друг друга. то есть нет доктрины: generate: entity command в DoctrineBundle, и нет доктрины: generate: entity в комплекте Generator – DavidLin

Смежные вопросы