У меня есть эта сущность Фасада, каждый раз, когда я пытаюсь изменить форму, в которую включена моя ветка ниже, она возвращает эту ошибку:
An exception has been thrown during the rendering of a template ("Parameter "buildings_id" for route "addFacade" must match "[^/]++" ("" given) to generate a corresponding URL.").
Мое действие контроллера:
/**
* @Route("/{id}/card", name="business_card", methods="GET|POST|DELETE", defaults={"business_id"=1})
* @param Request $request
* @param Business $business
* @return Response
*/
public function show_card(Request $request, Business $business): Response
{
$businessCard = $business->getBusinessCard();
$formCard = $this->createForm(BusinessCardType::class, $businessCard);
$formCard->handleRequest($request);
if (($formCard->isSubmitted() && $formCard->isValid())) {
$businessCard = $formCard->getData();
$em = $this->getDoctrine()->getManager();
$em->persist($businessCard);
$em->flush();
return $this->redirectToRoute('business_card', ['id' => $business->getId()]);
}
$dict = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J');
return $this->render('business/card.html.twig', ['business' => $business, 'formCard' => $formCard->createView(), 'dict' => $dict]);
}
Шаблон моей веточки:
{% for buildingsInfo in business.businessCard.buildingsInfos %}
{% set idBuildingsInfo = idBuildingsInfo|merge([buildingsInfo.id]) %}
<a class="btn btn-outline-primary mb-3" href="{{ path("addFacade",{"buildings_id": idBuildingsInfo[j] }) }}">Ajouter une façade</a>
{% endfor %}
Я попытался вывести свою переменную idBuildingsInfo
, но все значения массива являются числами (без нулевых значений). Я также попытался добавить значение по умолчанию в моем контроллере для параметра buildings_id
, но оно, похоже, ничего не меняет.