Я пытаюсь решить проблему в моем проекте Symfony. Я хочу, чтобы пользователь выбрал значение из раскрывающегося списка в столбце (готово), а затем обновил новое значение в базе данных. Дело в том, что когда я нажимаю значение обновления, он получает старое значение и не обновляется. Вот код PHP
/**
* @Route("/pedidoventa/edit/{id}", name="pventa_edit")
*/
public function editpventaAction($id, Request $request)
{
$Pedido_Venta = $this->getDoctrine()
->getRepository('AppBundle:Pedido_Venta')
->find($id);$Pedido_Venta->setEstado($Pedido_Venta->getEstado());//traer los datos
$estado = ($Pedido_Venta->getEstado());$em = $this->getDoctrine()->getManager();
$Pedido_Venta = $em->getRepository('AppBundle:Pedido_Venta')->find($id);
$Pedido_Venta->setEstado($estado);$em->flush();
$this->addFlash(
'notificacion',
'Estado Editado'
);
return $this->redirectToRoute('pventa_list');
}
А вот и HTML-таблица
{% extends 'base.html.twig' %}
{% block body %}
<h2 class="page-header">Pedidos de Venta</h2>
<table class="table table-striped">
<thead>
<tr>
<th>#</th>
<th>Fecha - Hora</th>
<th>Estado</th>
<th>Total</th>
</tr>
</thead>
<tbody>
{% for Pedido_Venta in pedidosventa %}
<tr>
<th scope="row">{{Pedido_Venta.id}}</th>
<td><a href="/pedidoventa/details/{{Pedido_Venta.id}}">{{Pedido_Venta.fecha}}</a></td>
<td><select>
<option selected="selected">{{Pedido_Venta.estado}}</option>
<option>Listo</option>
<option>Con Demora</option>
</select>
</td>
<td></td>
<td>
<a href="/pedidoventa/edit/{{Pedido_Venta.id}}" class="btn btn-info">Editar</a>
<a href="/pedidoventa/delete/{{Pedido_Venta.id}}" class="btn btn-danger">Eliminar</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
<a href="/pedidoventa/create" class="btn btn-primary">Nuevo Pedido de Venta</a>
{% endblock %}
Любая помощь могла бы быть полезна
Вы отправляете только удостоверение личности. Посмотрите на свой HTML, там нет никакого <form>
тег, который ждет param от вашего выпадающего списка. Пожалуйста, создайте форму для решения вашей проблемы.
Других решений пока нет …