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

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

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

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

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

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

2 ответа

Решение

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

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

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

(источник: FAQ по YAML (спасибо Destiny Architect за ссылку))

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

4 пробела

doctrine:
    dbal:
        default_connection: default

2 пробела

doctrine:
  dbal:
    default_connection: default

Если вы используете EditorConfig, обязательно добавьте его в файл .editorconfig

[*.yml]
indent_style = space
indent_size = 4

Вы можете изменить indent_size на 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 }

Файл YAML не может содержать вкладки в качестве отступа, поэтому ошибка здесь: C:\\xampp\\htdocs\\api\\app/../src/AppBundle/Resources/config/valida tor.yml" at line 9 (near " - { resource: validators/services.yml }"),

Другие вопросы по тегам