2016-12-01 51 views
0

发生此错误时,我正在执行一个简单的更新操作。更新操作完成,但是当我就先回去了,看的页面我得到下面这个错误的修改:警告:preg_match()期望参数2是字符串,给定的对象ERROR Symfony 3

警告:的preg_match()预计参数2为字符串,对象给出

这是我的嫩枝代码:

<form class="form-horizontal" method="post" action="{{ path('Update_comment',{'idc':comment.id}) }}"> 
    <div class="control-group"> 
     <label class="control-label" for="inputPassword">New Comment <sup>*</sup></label> 
     <div class="controls"> 
       <textarea name="contenu" cols="2" rows="20"></textarea> 
     </div> 
    </div> 
    <div class="control-group"> 
     <div class="controls"> 
       <button type="submit" class="btn btn-success"> 
        <i class=" icon-pencil"></i>Edit 
       </button> 
     </div> 
    </div> 
</form> 

这是我行动的代码:

public function UpdateCommentAction($idc){ 
    $em = $this->getDoctrine()->getManager(); 

    $cmt = $em->getRepository('MyAppUserBundle:PostComment')->find($idc); 
    $idPost=$cmt->getIdPost(); 

    if ($cmt != null) { 
     if (isset($_POST['contenu'])) { 
      $cmt->setContenu($_POST['contenu']); 

      $em->flush(); 
     } 
    } 

    return $this->redirectToRoute("get_view_post", array('id' => $idPost)); 
} 

,这些都是我的路由的配置:

get_view_post: 
    path:  /blog/get/one/post/{id}/ 
    defaults: { _controller: "MyAppBlogBundle:Blog:getpost" } 
Update_comment: 
    path:  /blog/get/post/Comment/Update/View/{idc} 
    defaults: { _controller: "MyAppBlogBundle:Blog:UpdateComment" } 

我不知道哪里出了问题,特别是更新用操作工作。

+0

你的preg_match代码在哪里? –

+0

对不起,你的意思是preg_match代码是什么意思? – petrucci

+0

是啊,你的错误是关于preg_match,但我已经看到它在你的代码。 –

回答

1

你可以在命令行中的symfony项目的根目录运行以下命令:

php bin/console cache:clear --env=prod 

我猜想也许你做出改变,他们仍然缓存。 除非有别的东西你没有告诉我们?我看不到其他信息来自哪里,因为您没有preg_match任何地方。

+0

我改变了路径到别的地方,错误消失了 – petrucci

相关问题