You can dynamically create routes by creating your own Route Loader
Announce the service first
services.yml
services: acme_foo.route_loader: class: Acme\FooBundle\Loader\MyLoader arguments: - %my.parameter% tags: - { name: routing.loader }
Then create a class
Acme \ FooBundle \ Loader \ MyLoader
use Symfony\Component\Routing\Route; use Symfony\Component\Routing\RouteCollection; use Symfony\Component\Config\Loader\Loader; class MyLoader extends Loader { protected $params; public function __construct($params) { $this->params = $params; } public function supports($resource, $type = null) { return $type === 'custom' && $this->param == 'YourLogic'; } public function load($resource, $type = null) {
Then just add import to your routing
app / config / routing.yml
_custom_routes: resource: . type: custom
source share