我正在尝试使用ajax与symfony 2,但我得到错误500,对于我的网址我正在使用jsrouterbundle她的路线:
vote:
pattern: /vote
defaults: { _controller: UserBundle:User:vote}
options:
expose: true
这是我的js函数:
function vote(res) {
var path=Routing.generate('vote');
alert(path);
$.ajax({
method: "POST",
url: path,
data: {vote: "Positif", id:res}
})
.done(function (msg) {
alert("Data Saved: " + msg);
});
}
这就是我所说的那个功能
<img alt="test" onclick='vote("{{ result.id }}")'/>
她是我的php控制器
public function voteAction(Request $request)
{
if ($request->isXmlHttpRequest()) {
$vote= $request->get("vote");
$id= $request->get("id");
$em = $this->getDoctrine()->getEntityManager();
$rep = $em->getRepository('LoginBundle:Resultat');
$resultat = $rep->findOneBy($id);
if ($resultat) {
$resultat->setVote($vote);
$em->flush();
}
return $this->render('LoginBundle:Login:inscription.html.twig');
}
return $this->render('LoginBundle:Login:inscription.html.twig');
}
我想问题是路线,但我不知道解决这个问题
感谢您的帮助
答案 0 :(得分:3)
更改您的JavaScript功能路径
var path=Routing.generate('vote');
关注
var path="Routing.generate('vote')";
答案 1 :(得分:0)
为您的网站开发mod(在 dev 模式下运行代码,在app_dev.php上运行代码)。在 500错误背后会出现真正的错误。