我对ParamConverter选项存在问题" repository_method"
这是一个"标准"请求我的控制器:
public function viewmessageAction($id, Request $request)
{
$repository = $this->getDoctrine()->getManager()->getRepository('LAPContactBundle:Contact');
$message = $repository->findMessage($id);
if(null === $message) {
throw new NotFoundHttpException("Le message d'id ".$id." n'existe pas.");
}
die(var_dump($message));
}
结果:
array (size=11)
'id' => int 1
'dateContact' =>
object(DateTime)[756]
public 'date' => string '2016-12-13 00:00:00.000000' (length=26)
public 'timezone_type' => int 3
public 'timezone' => string 'Europe/Paris' (length=12)
'choix' => string 'Problème sur le site internet' (length=30)
'nom' => string 'Personne' (length=8)
'prenom' => string 'Paul' (length=4)
'email' => string 'paul.personne@gmail.com' (length=23)
'telephone' => int 607080910
'texte' => string 'Bonjour, c'est pour faire un message de test en fait je n'existe pas mouahahahah' (length=80)
'traite' => int 1
'dateTraite' =>
object(DateTime)[760]
public 'date' => string '2016-12-14 00:00:00.000000' (length=26)
public 'timezone_type' => int 3
public 'timezone' => string 'Europe/Paris' (length=12)
'username' => string 'mike' (length=4)
我的最后一个结果是'用户名'。
这里是ParamConverter的控制器:
/**
* @ParamConverter("post", class="LAPContactBundle:Contact", options={"repository_method" = "findMessage"})
*/
public function viewmessageAction($id, Request $request, Contact $message)
{
die(var_dump($message));
}
结果:
object(LAP\ContactBundle\Entity\Contact)[243]
private 'id' => int 1
private 'nom' => string 'Personne' (length=8)
private 'prenom' => string 'Paul' (length=4)
private 'email' => string 'paul.personne@gmail.com' (length=23)
private 'telephone' => int 607080910
private 'texte' => string 'Bonjour, c'est pour faire un message de test en fait je n'existe pas mouahahahah' (length=80)
private 'dateContact' =>
object(DateTime)[212]
public 'date' => string '2016-12-13 00:00:00.000000' (length=26)
public 'timezone_type' => int 3
public 'timezone' => string 'Europe/Paris' (length=12)
private 'choix' => string 'Problème sur le site internet' (length=30)
private 'traite' => int 1
private 'dateTraite' =>
object(DateTime)[214]
public 'date' => string '2016-12-14 00:00:00.000000' (length=26)
public 'timezone_type' => int 3
public 'timezone' => string 'Europe/Paris' (length=12)
private 'idTraite' => int 1
此处我没有'用户名'而是我有加入的ID
有人可以帮助我吗?
修改
似乎paramconverter返回find()方法而不是自定义方法findMessage()