错误是:鸡尾酒\ RecipesBundle \ Entity \ Ingredient
的查询缺少标识符ID所以,问题是控制器没有得到参数ingredientId,我尝试了很多例子和教程,但没有任何帮助。也许还有一些我错过的容易出现的明显错误?我如何将参数从ajax函数传递给控制器?
答案 0 :(得分:1)
你正在创建一个新的空的Request对象,它显然没有当前请求的请求信息......它将是空的。
您可以将参数添加到名为addIngredientToUser
的{{1}},并使用类型提示为$request
。这样,Symfony2将为您提供填充了正确请求信息的当前请求的实际请求对象。
答案 1 :(得分:0)
工作代码
public function addIngredientToUserAction(Request $request) {
$usr = $this->getUser();
$id = $request->get('ingredient');
$ingredientEntity = $this->getDoctrine()->getRepository('CocktailsRecipesBundle:Ingredient')->find($id);
$usr->addIngredient($ingredientEntity);
return $this->render('CocktailsRecipesBundle:Default:menu.html.twig');
}
在您对先前回答的评论中,您犯了一个错误
$id = $request->get('id');
^^ - should be 'ingredient'