问题描述
我有这个路线设置:
* @Rest\Post("/training-questionnaire/clone/{sourceTraining}/{targetTraining}",name="training.clone.questionnaire")
* @ParamConverter("sourceTraining",class="AppBundle:Training")
* @ParamConverter("targetTraining",class="AppBundle:Training")
*
* @Rest\Post("/v1.1/training-questionnaire/clone/{uuid}/{target_training_uuid}",name="training.clone.questionnaire.v1.1")
* @ParamConverter("sourceTraining",class="AppBundle:Training",options={"mapping": {"uuid": "uuid"}})
* @ParamConverter("targetTraining",options={"mapping": {"target_training_uuid": "uuid"}})
*
* @ViewAnnotation()
...
public function cloneQuestionnaireAction(Training $sourceTraining,Training $targetTraining) {...}
此路由 training.clone.questionnaire.v1.1
根据 uuid 参数给出正确的 id,但第一个 training.clone.questionnaire
显示消息:
{
"code": 404,"message": "AppBundle:Training object not found."
}
但是,如果我更改注释的顺序,例如:
* @Rest\Post("/v1.1/training-questionnaire/clone/{uuid}/{target_training_uuid}",options={"mapping": {"target_training_uuid": "uuid"}})
*
* @Rest\Post("/training-questionnaire/clone/{sourceTraining}/{targetTraining}",class="AppBundle:Training")
路线 training.clone.questionnaire
工作和 training.clone.questionnaire.v1.1
为两种训练提供相同的 ID,这也不好..
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)