我有这个dropdwonlist,这个数字是投票,我的提示很简单:我怎么能通过按“-”删除数据库的投票,当我按下任何其他数字时,投票将在数据库中更新为这个值?
下拉列表的默认值是votacion.votCalificacion
数据库中投票的值
这是投票的下拉列表:
<form id="post">
<select id="cd-dropdown" class="cd-select">
<option value="-1" selected>{{ voto.votCalificacion }}</option>
<option>-</option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
</select>
</form>
这是控制器管理投票的功能:
public function gestionarVotoAction($pysStr, $votCalificacion)
{
$em = $this->getDoctrine()->getManager();
$pys = $em->getRepository('PYSBundle:Pys')->findPys($pysStr);
$usuario = $this->get('security.context')->getToken()->getUser();
$voto = $em->getRepository('UsuarioBundle:Usuario')->findVoto($usuario, $pys);
if(!$voto)
{
$voto = new Voto($usuario, $pys);
}
if ($votCalificacion == "-")
{
$em->remove($voto);
}
else
{
$voto->setVotCalificacion($votCalificacion);
$voto->setVotFecha(new \DateTime("now"));
$em->persist($voto);
}
$em->flush();
return $this->redirect($this->generateUrl('usuario_pelicula', array('pysStr' => $pysStr)));
}