2015-03-09 3 views
1

Я создал автономный комплект Symfony, теперь можно запустить комплект в одиночку без настройки Symfony?Как запустить Symfony Bundle без настройки приложения Symfony?

Я выполнил тесты единицы, и это нормально, теперь я хочу, чтобы запустить контроллер расслоения в браузере (это возможно?)

Спасибо заранее!

ответ

0

Вы не можете использовать пакет в контексте Symfony, не указывая Symfony, что он «установлен». Для этого необходимо включить сверток в ваших AppKernel:

// app/AppKernel.php 

// ... 
class AppKernel extends Kernel 
{ 
    // ... 

    public function registerBundles() 
    { 
     $bundles = array(
      // ..., 
      new FOS\UserBundle\FOSUserBundle(), 
     ); 

     // ... 
    } 
} 
+0

Извините, если я не объяснил свой вопрос должным образом. Я имею в виду, что теперь я создал автономный пакет, могу ли я запустить пакет в одиночку без установки фиктивного приложения symfony. –

+1

Что вы подразумеваете под «автономной связкой»? Bundle предназначен для работы в Symfony, он не может быть автономным. –

+0

Спасибо, что напомнили, что «Bundle предназначено для запуска в Symfony». Я просто хочу, чтобы функции моего пакета запускались без настройки Symfony. Я буду смотреть на ваш ответ. –

1

Bundle является Symfony специфичен и это имеет смысл только в контексте Symfony.

Единственный контекст, который я могу придумать, когда было бы полезно вызвать контроллеры пакетов без установки пакета в проекте Symfony, - тестов. Если это то, что вам нужно, можно настроить усеченное ядро ​​Symfony только для тестов. См. Мою статью по теме: How to run Behat scenarios and functional tests from a Symfony bundle in isolation of a project

Я также внедрил DemoBundle, где вы можете видеть, как он работает как с phpunit, так и с проверками Behat.

Вы можете использовать тот же подход, если вам просто нужно проверить свой пакет вручную в браузере, но вы действительно не хотите устанавливать всю фреймворк.

В нижней строке вы должны установить хотя бы минимальное ядро ​​Symfony.

+0

Рад узнать о Бехате, но я искал, если можно было запустить контроллер (из окна браузера), как это было бы с установкой Symfony. Теперь кажется, что это невозможно. Спасибо за ваше время. –

+0

Я упомянул в своем ответе, что это возможно, создав простое ядро. Однако вам не удалось объяснить ваш случай использования. –

+0

Хорошо, если быть конкретным, у меня есть свой пакет на https://github.com/santhapa/NepaliDateConverterBundle, и я также создал AppKernel. Итак, могу ли я получить функциональность этого пакета самостоятельно, не настраивая Symfony. (не с тестовой записью) –

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