Я пытаюсь запустить FOSUserBundle после обновления Symfony с версии 2.6 до 3.0. В версии 2.6 у меня в основном был сайт, css и js мы ручками от assetic, у FOSUserBundle был запущен и запущен, я настроил SQLite через доктрину.FOSUserBundle с Symfony 3.0
Итак, перед тем, как выбрать этот проект, я сделал обновление, потому что 2.6 больше не поддерживался.
Поскольку я новичок в Symfony, все, что я сделал, более или менее скопировано из documentation. FOSUserBundle отображается в виде включенного пакета в dev-mode. Alle мой код находится в /src/AppBundle. Я использую 2.0-dev версию FOSUserBundle (точнее, e770bfa).
Вот часть моего шаблона:
<li>
{% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
<a href="{{ path('fos_user_security_logout') }}">
{{ 'layout.logout'|trans({}, 'FOSUserBundle') }}
</a>
{% else %}
<a href="{{ path('fos_user_security_login') }}">
{{ 'layout.login'|trans({}, 'FOSUserBundle') }}
</a>
{% endif %}
</li>
В 2,6 я получил
fos_user:
resource: "@FOSUserBundle/Resources/config/routing/all.yml"
в моем /src/AppBundle/config/routing.xml. Если я держу это так, я даже не могу загрузить сайт из-за исключения
"Unable to generate a URL for the named route "fos_user_security_login" as such route does not exist."
После сдачи его в /app/config/routing.yml мой сайт шоу и других маршрутов, определенного с /src/AppBundle/config/routing.xml работа. Так что ничего не случилось с этим файлом.
Когда сайт показывает, что перевод ссылок нарушен.
{{ 'layout.login'|trans({}, 'FOSUserBundle') }}
Показывает как «layout.login» вместо aus Вход как и прежде с 2.6. И если я нажму ссылку для входа (путь как ожидалось /login). Symfony говорит мне:
Unable to find template "AppBundle:Pages:login.html.twig".
Я не понимаю, почему он ищет его в папке AppBundle? В соответствии с тем, что я читал, он должен искать его в папке FOSUserBundle или в /app/Ressources/FOSUserBundle/..., где я помещаю его, чтобы переопределить шаблон по умолчанию. Я подтвердил, что это все еще способ переопределить шаблоны даже с версией 3.0.
Я также попытался поместить шаблон в папку AppBulde/Pages/. Затем он находит шаблон, но он все еще не работает.
Я несколько раз очистил кеш (это решило еще одну проблему с assetic).
Он выглядит так, как будто я пропускаю значительную часть, чтобы заставить FOSUserBundle работать. Какие-нибудь предложения о том, что я мог упустить?
периодически просматривать маршруты, которые у вас есть! php bin/console debug: router –