2016-05-10 2 views
0

Я использую FOSUserBundle с Symfony2 и после регистрации (маршрут/регистр), я получил ошибку 500 на маршруте/подтверждается следующим сообщением:FOSUserBundle регистрации: targetUrl не существует

Variable «targetUrl» не существует в FOSUserBundle: Регистрация: confirmed.html.twig в строке 9

Я вижу некоторые решенные темы, установив always_use_default_target_path: true в security.yml, но это не работает для меня.

Нужна помощь!

EDIT:

Информация об окружающей среде Os:: ArchLinux

Php: версия 7.0.6

Nginx: версия 1.10.0 очистка кэша ничего

EDIT 2 не изменится

Symfony: 2.7.13

код пользовательского файла шаблона (FOSUserBundle: Регистрация: confirmed.html.twig находится в приложение/Resources/FOSUserBundle/просмотров/регистрация /)

{% extends "FOSUserBundle::layout.html.twig" %} 

{% trans_default_domain 'FOSUserBundle' %} 

{% block fos_user_content %} 
     <div class="modal-header"><h4 class="modal-title" id="myModalLabel">Confirmed !</h4></div> 
     <div class="modal-body"> 
      <p>{{ 'registration.confirmed'|trans({'%username%': user.username}) }}</p> 
      {% if targetUrl %} 
       <p><a href="{{ targetUrl }}">{{ 'registration.back'|trans }}</a></p> 
      {% endif %} 
     </div> 

     <script type="text/javascript" > 
     $('#register').on('hide.bs.modal', function(ev) 
     { 
      location.reload(true); 
     }) 
     </script> 
{% endblock fos_user_content %} 

После вставки моего кода, написанного несколько месяцев назад, я вижу, что Я использую переменную «targetUrl». Итак ... Почему symfony считают его «непознанным» в собственном шаблоне, но не в моем?

Состояние проблемы:

В этом раз, переименовав исходный шаблон, расположенный в FOSUserBundle установки директории (поставщиков/...) решить эту проблему, но это действительно некрасиво. кажется, что для этого маршрута и только для этого маршрута (регистр/подтверждение), Symfony игнорировать мой собственный шаблон, хотя он может быть найден в установке реж ...

+0

Частично решена. Я не знаю почему, но symfony не проверял приложение/Ressource в первый раз и поэтому игнорирует мое переопределение шаблона. Нужно переименовать/удалить исходный файл ... – Loy

+0

Согласно вашему комментарию, вы скопировали и изменили содержимое файла 'FOSUserBundle: Registration: confirm.html.twig', можете ли вы добавить содержимое файла в свой вопрос? –

+0

Код добавлен. Но он работал в прошлом месяце, а другой шаблон в той же папке хорошо работает – Loy

ответ

0

От Ваш комментарий:

Я не Не знаю почему, но symfony не проверял приложение/Ressource в первый раз и поэтому игнорирует мое переопределение шаблона. Необходимо переименовать/дел исходного файла ...

найти правильный путь, где преобладающий файл должен быть помещен может быть сложным, он должен быть app/Resources/FOSUserBundle/views/Registration/confirmed.html.twig в вашем случае.

+0

Мой путь в порядке. И после переименования исходного файла (из FOSUserBundle), symfony использует мой файл (а также register.html.twig присутствует в моем приложении/Resources/... и работает хорошо, symfony использует его без каких-либо других «взломов»). Может быть, FOSUserBundle напрямую использует файл шаблона для подтвержденного маршрута (жестко закодированные ссылки?)? – Loy

+0

@ Loy Я не был уверен, что это был ответ. Не стесняйтесь добавлять ответ с помощью своего решения, это может помочь некоторым другим пользователям. –

+0

В это время мое решение очень уродливо, потому что меня модифицировали непосредственно продавцы/friendsofsymfony/..., чтобы заставить symfony использовать собственный шаблон в папке app/Resource/...:/Я отредактирую свой вопрос до добавить некоторую информацию о проблеме – Loy

Смежные вопросы