Как вы настраиваете контроллер в проекте Silex PHP Framework? - PullRequest
7 голосов
/ 20 июня 2011

Пока что я не могу заставить работать что-либо, кроме корневого пути:

Вы помещаете все вызовы вашего контроллера в файл app.php?

$app->get('/', function ($id) {
  ...
});

$app->get('/about', function ($id) {
  ...
});

ИлиВы помещаете их в отдельные файлы?До сих пор метод root get работал нормально и отображал шаблон веточки, но все, что в прошлом ничего не делало.

1 Ответ

15 голосов
/ 20 июня 2011

Silex - это микрорамка.Это дает вам возможность определить ваше приложение в одном файле.Но это не значит, что вы должны.

Обычно я определяю все контроллеры в одном файле app.php, но извлекаю повторно используемые части в классы в каталоге src, например src/ProjectName/SomeClass.php, который может быть автоматически загружен и также проверен модулем.

Теперь, если количество контроллеров растет, вы можете разделить ваше приложение на «модули» и смонтировать их под своим основным приложением (например, смонтировать администраторапанель под /admin).Silex поддерживает монтаж, например:

require_once __DIR__.'/silex.phar';

$app = new Silex\Application();

$app->mount('/admin', new Silex\LazyApplication(__DIR__.'/admin.php'));

Для получения более подробной информации о монтаже, ознакомьтесь с Повторное использование приложений из документации Silex.

...