Я пытаюсь реализовать функцию поиска пользователя по электронной почте на панели администратора страницы. В настоящее время я жестко запрограммировал значение в переменную $email
, чтобы проверить, работает ли поиск. Он находит нужного пользователя, но ничего не отображает в ветке.
Выполнение {{ dump() }} выводит: array:2 [▼ 0 => User {#4745 ▼ -id: 5 - имя пользователя: "test_user" -plainPassword: null -password: "$2y$13$rGYteIrzifg9Dty.O5knOOCHQnzOtF.nZux8h1jc4sNbap5V7Xn0 ." -email: "[email protected]" } "app" => AppVariable {#2617 ▶} ]
функция, которую я использую в AdminController.php:
/**
* @Route("/admin/result", name="user_search")
* Method({"POST"})
*/
public function user_search(Request $request)
{
$email = '[email protected]';
$result = $this->getDoctrine()
->getRepository(User::class)
->findOneBy(['email' => $email]);
if ($result) {
return $this->render('admin/result.html.twig', $result);
}else{
return $this->render('admin/result.html.twig', [
'error' => 'No user found with this email '.$email]);
}}
результат.html.twig:
{% extends 'base.html.twig' %}
{% block body %}
{% if error %}
<span class="error">{{ error }}</span>
{% endif %}
{% if result %}
<table>
<tr>
<th>Username</th><th>Email</th>
</tr>
{% for item in result %}
<tr>
<td>{{ item.getUsername }}</td><td>{{ item.getEmail }}
</td>
</tr>
{% endfor %}
</table>
{% endif %}
{{ dump() }}
{% endblock %}