Вот первый вопрос, который я опубликовал. Я надеюсь, что вы сможете мне помочь.
Моя проблема описана в заголовке, но давайте будем точнее:
Я использую PHP7.2 и Symfony3.4
У меня есть стандартная форма, действие перенаправления которой следующее:
/**
* @Route("/giveMetiers/{newAgent}", name="giveMetiers")
* @param $newAgent
* @return Response
*/
public function giveMetiersAction($newAgent)
{
$agent = $this->getProfil();
$response = new Response();
$response->setContent(
$this->render(
'AgentBundle:Templates:blank.html.twig',
[
"agent" => $agent,
"url" => $this->generateUrl(
'giveMetiersCorpus',
["newAgent" => $newAgent]
),
"title" => "Attribuer des métiers"
]
)
->getContent()
);
return $response;
}
Функция giveMetierCorpus имеет следующий вид:
/**
* @Route("/giveMetiersCorpus{newAgent}", name="giveMetiersCorpus")
* @param $newAgent
* @return Response
*/
public function giveMetiersCorpusAction($newAgent)
{
//Some business logic..
$template = $this->render(
'AgentBundle:SuperAgent:giveMetiers.html.twig',
[
"poles" => $poles,
"newAgent" => $newagent,
"metiers" => $metiers,
"constMetier" => $constMetier,
"constCompetence" => $constCompetence
]
)
->getContent();
$json = json_encode($template);
$response = new Response($json, 200);
$response->headers->set('Content-Type', 'application/json');
return $response;
}
Ну, все работает, мой взгляд вызван правильно, и затем отображается новая форма. Здесь приходит беда. Когда я отправляю эту новую форму, выполняется действие:
/**
* @Route("/updateMetiersAgent", name="updateMetiersAgent")
* @param Request $request
* @return Response
*/
public function updateMetiersAgent(Request $request)
{
//Business logics..
return $this->redirect(
$this->generateUrl(
'giveCompetences',
["newAgent" => $agent->getId()]
)
);
}
Какие вызовы дают компетенции ..:
/**
* @Route("/giveCompetences/{newAgent}", name="giveCompetences")
* @param $newAgent
* @return Response
*/
public function giveCompetencesAction($newAgent)
{
$agent = $this->getProfil();
$response = new Response();
$response->setContent(
$this->render(
'AgentBundle:Templates:blank.html.twig',
[
"agent" => $agent,
"url" => $this->generateUrl(
'giveCompetencesCorpus',
["newAgent" => $newAgent]
),
"title" => "Attribuer des competences"
]
)
->getContent()
);
return $response;
}
Здесь, функция giveCompetencesCorpus не вызывается ... Я даю вам эту функцию:
/**
* @Route("/giveCompetencesCorpus{newAgent}", name="giveCompetencesCorpus")
* @param $newAgent
* @return Response
*/
public function giveCompetencesCorpusAction($newAgent)
{
//Business Logic
$template = $this->render(
'AgentBundle:SuperAgent:giveCompetences.html.twig',
[
"poles" => $poles,
"newAgent" => $newagent,
"technos" => $listeTechnos,
"constMetier" => $constMetier,
"constCompetence" => $constCompetence
]
)
->getContent();
$json = json_encode($template);
$response = new Response($json, 200);
$response->headers->set('Content-Type', 'application/json');
return $response;
}
Я действительно не понимаю, почему это не звонок.
Я даже пытался напрямую вызывать эту последнюю функцию напрямую как действие из моей формы, я вижу, что функция вызывается, но ничего не происходит, ничего не отображается на странице.
Кто-нибудь получил решение этой проблемы, пожалуйста?
С наилучшими пожеланиями,
Maxime