Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony2和条令-@ORM\PostPersist()不起作用_Php_Symfony_File Upload_Doctrine Orm - Fatal编程技术网

Php Symfony2和条令-@ORM\PostPersist()不起作用

Php Symfony2和条令-@ORM\PostPersist()不起作用,php,symfony,file-upload,doctrine-orm,Php,Symfony,File Upload,Doctrine Orm,我的Symfony2项目有一个文件上传功能。 我用这个例子 问题是我的@ORM\PostPersist没有被触发,并且我的文件没有存储在特定的文件夹中 以下是我所拥有的: 我将管理文件的1份实体手稿: /** * @ORM\PostPersist() * @ORM\PostUpdate() */ public function upload() { if (null === $this->file) { return; } $this-&g

我的Symfony2项目有一个文件上传功能。 我用这个例子

问题是我的@ORM\PostPersist没有被触发,并且我的文件没有存储在特定的文件夹中

以下是我所拥有的:

我将管理文件的1份实体手稿:

 /**
 * @ORM\PostPersist()
 * @ORM\PostUpdate()
 */
public function upload()
{
    if (null === $this->file) {
        return;
    }

    $this->file->move( $this->getUploadRootDir().date('Ymdhis').'_'.$this->file->getClientOriginalName() );
}
 public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder->add('file', 'file', array('label'=> 'HTM File', 'required' => true));
}
我试着把一个var_转储放在那里,但是var_转储从来没有被操作过,所以我永远不会进入那里

在我的表格中,我有以下文件:

 /**
 * @ORM\PostPersist()
 * @ORM\PostUpdate()
 */
public function upload()
{
    if (null === $this->file) {
        return;
    }

    $this->file->move( $this->getUploadRootDir().date('Ymdhis').'_'.$this->file->getClientOriginalName() );
}
 public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder->add('file', 'file', array('label'=> 'HTM File', 'required' => true));
}
最后,在控制器中,我有

if ($request->isMethod('POST')) {

        $form->bind($request);

        if ($form->isValid()) {
            $em_scipub->persist($enquiry);  
            $em_scipub->flush();
            ....

我修复了这个问题,我想我忘记添加的是@ORM\HasLifecycleCallbacks

所以,在原稿实体中,它应该是这样的:

/**
* Manuscripts
*
* @ORM\Table(name="manuscripts")
* @ORM\Entity
* @ORM\HasLifecycleCallbacks
* 
*/

class Manuscript
{
  ....

我修复了这个问题,我想我忘记添加的是@ORM\HasLifecycleCallbacks

所以,在原稿实体中,它应该是这样的:

/**
* Manuscripts
*
* @ORM\Table(name="manuscripts")
* @ORM\Entity
* @ORM\HasLifecycleCallbacks
* 
*/

class Manuscript
{
  ....