Ich habe ein Problem mit meinem Projekt. Mein Problem existiert, wenn ich versuche, einige Daten von der Entität zu löschen. Mein Controller wurde mit Sesio Generator generiert. Hier ist mein Code:Symfony2 Form Methoden diffrent in Prod und Dev Version
/**
* Deletes
* @Route("/{id}/delete", name="delete")
* @Method({"DELETE"})
*/
public function deleteAction(Request $request, Task $task) {
$form = $this->createDeleteForm($task);
$form->handleRequest($request);
if ($form->isValid()) {
$em = $this->getDoctrine()->getManager();
$em->remove($task);
$em->flush();
$this->get('session')->getFlashBag()->add('notice_success', 'Success');
} else {
$this->get('session')->getFlashBag()->add('notice_error', 'NO DELETE');
}
return $this->redirectToRoute('task');
}
/**
* Creates a form to delete.
*/
private function createDeleteForm(Task $task) {
return $this->createFormBuilder()
->setAction($this->generateUrl('delete', array('id' => $task->getId())))
->add('submit', \Symfony\Component\Form\Extension\Core\Type\SubmitType::class, array('label' => 'Delete'))
->getForm()
;
}
Ich muss Ihnen sagen, dass dieser Code Arbeit schön auf DEV (app_dev.php), aber es ist nicht in ART-Version arbeiten.
Ich versuche, dieses Problem zu lösen, und ich habe versucht, Formularmethode zu POST zu ändern, und es funktioniert Eigenschaft PROD und DEV. Es sieht aus wie DELETE-Methode funktioniert nicht in PROD-Version.
Jemand hat ein ähnliches Problem?
Wenn Sie Ihre Anwendung in prod Modus zuzugreifen, müssen Sie den Cache für das löschen Umgebung: '$ php bin/Konsolencache: clear --env = prod'. Möglicherweise müssen Sie auch die Zugriffsrechte für die Verzeichnisse "var/cache", "var/logs" und "var/sessions" festlegen: '$ sudo chmod 777 -R var/cache var/logs/var/sessions' davor und danach Sie verwenden den Konsolenbefehl 'cache: clear'. Dann probier es aus. –