2016-04-04 4 views
2

, когда я запустить эту командуСоздание представления с CRUD Доктрины внутри пользовательского Bundle

php bin/console generate:doctrine:crud --entity=CustomBundle:Test 

Doctrine создать относительные взгляды внутри

symfony/app/resource/views/test 

но мой CustomBundle с относительными сущностей создается внутри

symfony/app/src/CustomBundle/Entity 

Итак, проблема заключается в следующем: как создать эти виды внутри

symfony/app/src/CustomBundle/views 

?

ответ

1

Ну, у этой команды нет никаких вариантов. Вы можете увидеть все доступные опции в official documentation. Но если вам это действительно нужно, вы должны переопределить SensioGeneratorBundle, вы можете увидеть, как расширить любой комплект в here. Затем переопределить класс PHP поставщика/Sensio/генератор-пакет/генератор/DoctrineCrudGenerator.php, а затем найти действие "генерировать" и локализовать эту строку:

$dir = sprintf('%s/Resources/views/%s', $this->rootDir, str_replace('\\', '/', strtolower($this->entity))); 

заменить:

$dir = sprintf('%s/Resources/views', $this->rootDir); 

I не пробовал, но теоретически это должно сработать. Поскольку у вас есть намерение создать все представления там, возможно, вам нужно переопределить имя для каждого сгенерированного представления, вы можете увидеть действие для каждого из них ниже в этом классе.

Надеюсь, это поможет вам.

+0

doesn ' t work: новые виды сейчас находятся symfony/app/resource/views/test – flexicon

+0

Это так странно: когда я создал пакет, все отлично работает. Контроллеры и объекты хранятся в правой директории. Представления не ... – flexicon

+0

проблема в том, что контроллер для каждого объекта имеет другое имя, но все представления показывают все named, show.html.twig, поэтому они должны быть в разных папках для каждого объекта. – abdiel

0
symfony/app/CustomBundle/resources/views/test 

вы должны найти его там, и это зависит от того, какую версию вы используете ps, помечаете symfony 3 и symfony2 так !!!

+0

как я писал в своем вопросе, я не нашел вид внутри своего customBundle. я нахожу его в директории представления symfony, под symfony/app/resource/views/test (PS: представления отлично работают, и я использую symfony 3) – flexicon

+0

Я использую Symfony 3.0.4-DEV – flexicon

+0

okey so when вы запустили сера, это сработало? что он скажет –

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