Файл YAML не может содержать вкладки как отступы

Это моя первая работа с Symfony 2. Все, что я пытаюсь сделать здесь, - это когда пользователь нажимает кнопку отправки, он перейдет на другую страницу.

Но моя индексная страница не загружается. Они говорят, что что-то не так с моим файлом маршрутизации, в частности:

Файл YAML не может содержать вкладки в качестве отступа

Я не знаю, что я сделал неправильно. Вот мой файл маршрутизации.

community_online_shop_homepage:
    pattern: /
    defaults: { _controller: CommunityOnlineShopBundle:Page:index }
_login:
    pattern: /login
    defaults: { _controller: CommunityOnlineShopBundle:Page:login}

Ответ 1

В YAML файле используются пробелы как отступы, вы можете использовать 2 или 4 пробела для отступов, но нет вкладки. Другими словами, запрет вкладок запрещен:

Почему YAML запрещает вкладки?

Вкладки были объявлены вне закона, поскольку они обрабатываются по-разному разными редакторами и инструментами. И так как отступы настолько важны для правильной интерпретации YAML, эта проблема слишком сложна, чтобы даже попытаться. Действительно, Guido van Rossum из Python признал, что разрешение TAB в источнике Python является головной болью для многих людей, и если бы он снова разработал Python, он бы их запретил.

(источник: Часто задаваемые вопросы по YAML (благодаря Destiny Architect для ссылки ))

Например, файл конфигурации Symfony можно записать с 2 или 4 пробелами в качестве отступа:

4 пробела

doctrine:
    dbal:
        default_connection: default

2 пробела

doctrine:
  dbal:
    default_connection: default

Ответ 2

Можете ли вы попробовать cache:clear или попробуйте использовать path вместо pattern.

Опция path является новой в Symfony2.2, pattern используется в более старых версиях.

community_online_shop_homepage:
    path: /
    defaults: { _controller: CommunityOnlineShopBundle:Page:index }
_login:
    path: /login
    defaults: { _controller: CommunityOnlineShopBundle:Page:login }