Я делаю приложение, чтобы назначать встречи с врачами, и в шаблоне пациента мне нужно использовать идентификатор сущности доктора в пути, потому что я использую его в коде моего контроллера, и я все еще могуя не получаю идентификатор доктора сущностей, потому что когда я делаю {{doctor.id}}, на моем экране ничего не появляется, содержимое пустое.
В качестве решения я использовал адрес электронной почты доктора в URLно это довольно уродливо.
Это код контроллера
/**
* @Route("/patient/ajouter-medecin-favoris/{id}", name="meet_my_doc_ajouter_medecin_favoris")
*/
public function ajouterMedecinFavoris(MedecinRepository $repoMedecin, ObjectManager $manager, $id)
{
$patient = $this->getUser();
$medecin = $repoMedecin->findOneById($id);
$patient->addMedecinsFavori($medecin);
$manager->persist($patient);
$manager->flush();
return $this->RedirectToRoute('accueil');
}
вот код элемента, который я использую, чтобы щелкнуть по нему, чтобы перенаправить на контроллер ранее
<fieldset>
<h4><a href="{{path('meet_my_doc_ajouter_medecin_favoris',{id: medecin.id})}}" style="color: black;"><i class="fa fa-star"></i></a> Dr. {{ medecin.nom }} {{ medecin.prenom }}</h4>
</fieldset>
Я ожидал, что смогу использовать идентификатор доктора в URL, но я думаю, что когда вы вошли как лицо, вы не можете получить идентификатор (не идентификатор, используемый для входа в систему) других пользователей.и содержимое переменной пусто.Но я бы знал, есть ли решение использовать идентификатор, потому что передача электронной почты в URL-адрес не является решением, которое мне нужно, и у меня была такая же проблема с другим фрагментом кода, где другой объект пуст.
Вот код контроллера, который отправляет данные в представление
/**
* @Route("/patient/medecins-favoris", name="meet_my_doc_afficher_medecin_favoris")
*/
public function afficherMedecinFavoris()
{
$patient = $this->getUser();
$medecins = $this->getUser()->getMedecinsFavoris();
return $this->Render('meet_my_doc/afficherLesMedecinsFavoris.html.twig', ['medecins' => $medecins]);
}