Я использую Symfony 2.3.
В настоящее время я адаптирую свой файл routing.yml для использования переменной, которую я определяю в параметрах.yml. Я выбираю параметр для каждого клиента/проекта, однако иногда мне нужно, чтобы он был пустым.
По умолчанию (я думаю) SF требует предшествующей косой черты перед переменной.
Это мой текущий рабочий файл routing.yml:
index:
path: /{_namespace}/
defaults:
_controller: AppBundle:User:index
_namespace: %namespace%
methods: [GET]
welcome:
path: /{_namespace}/welcome
defaults:
_controller: AppBundle:User:welcome
_namespace: %namespace%
methods: [GET]
И мой parameters.yml:
parameters:
# [....]
namespace: 'project1'
И это позволило мне создавать такие URL-адреса, как:
http://www.domain.com/project1/
http://www.domain.com/project1/welcome
Однако, как я уже говорил ранее, мне нужны такие маршруты, как:
Для этого я пробовал следующее (обратите внимание на исключение предыдущей косой черты):
routing.yml:
index:
path: {_namespace}/
defaults:
_controller: AppBundle:User:index
_namespace: %namespace%
methods: [GET]
welcome:
path: {_namespace}/welcome
defaults:
_controller: AppBundle:User:welcome
_namespace: %namespace%
methods: [GET]
parameters.yml:
parameters:
# [....]
namespace: ''
И происходит исключение:
[Symfony\Component\Config\Exception\FileLoaderLoadException]
Cannot import resource "/home/cupaofarmacia/src/Ongagement/AppBundle/Resour
ces/config/routing.yml" from "/home/project/app/config/routing.yml".
(Malformed inline YAML string ({_namespace}/) at line 51 (near "path:
{_namespace}/").)
[Symfony\Component\Yaml\Exception\ParseException]
Malformed inline YAML string ({_namespace}/) at line 51 (near "path: {
_namespace}/").
Мне действительно нужно иметь возможность передать пустую переменную в начале маршрута.
Какие-либо предложения?
_namespace
. - person user2268997   schedule 24.09.2014