Doctrine2 / Symfony 2 @ParamConverter 自定义存储库方法删除未映射的参数

Doctrine2 / Symfony 2 @ParamConverter with custom repository method dropping unmapped arguments

我需要将非映射参数发送到我的自定义存储库方法。 然而,这些参数似乎完全被忽略了,当我转储我的存储库方法参数时,我没有得到它们。

我在这里找到了详细的问题,但没有评论:@ParamConverter with custom repository method droping unmapped arguments

有谁知道如何解决这个问题?

我的例子:

* @Route("/edit_planning/{planning}/{onlyPending}", name="edit_planning", defaults={"onlyPending": false})
* @ParamConverter("planning", class="AppBundle:FoodAnalytics\Planning", options={"mapping" : {"planning" = "id", "onlyPending"="onlyPending"}, "repository_method" = "findPlanningDependingOnExecution"})
public function editPlanningAction(Request $request, Planning $planning)

OnlyPending 路由参数未传递到存储库方法

我想你可以试试这个:(分成多行以便于阅读)

@ParamConverter("planning",
    class="AppBundle:FoodAnalytics\Planning", 
    options = {
        "id": {"planning", "onlyPending"}, 
        "repository_method" = "findPlanningDependingOnExecution"
    }
)

您不是在更改 mapping,而是在更改 "id" 的定义。然后 findPlanningDependingOnExecution 将接收带有键 planningonlyPendingarray 参数。

希望对您有所帮助...