2015-05-14 4 views
0

Я пытаюсь обновить запись, состоящую из файла pdf. запись успешно обновляется, но при обновлении поле файла становится пустым.Поле файла удалено автоматически при сохранении модели yii

мой код контроллера

$model2=$this->loadModel($alldata[0]->frm_id,'Forms'); 
      $values=array(); 
      $tagsarray=$_POST['searched_tag']; // matched tag values 
      $pdfval=$_POST['searched_tag_pdf']; // pdf form values 

      for($i=0;$i< count($pdfval);$i++) 
      { 
        $values[$pdfval[$i]]=$tagsarray[$i]; 
      } 
       $model2->analyse_data=json_encode($values); 
       $model2->frm_status=2; 
      if($model2->save()) 
      { 
       Yii::app()->user->setFlash('pdfupload','Form analysis done! data saved.'); 
       $this->redirect(Yii::app()->createUrl('/formsupload')); 
      }else 
      { 
       Yii::app()->user->setFlash('pdfupload','Some error to save the data.'); 
       $this->redirect(Yii::app()->createUrl('/formsupload')); 
      } 

и типовые правила является

public function rules() 
    { 
     // NOTE: you should only define rules for those attributes that 
     // will receive user inputs. 
     return array(
      array('frm_code,frm_desc,frm_pdf', 'required'), 
      array('frm_code', 'unique'), 
      array('is_approve', 'safe'), 
      //array('desc', 'min'=>1, 'max'=>200) 
      array('frm_pdf', 'file', 'types'=>'pdf','allowEmpty'=>true), 
     ); 
    } 

Update также попытался это решение here удалось поймать эту проблему.

ответ

0

Обработка обновлений загрузки файлов в yii может быть немного сложной задачей. Попробуйте установить атрибут файла как небезопасный и посмотреть, поможет ли это. Кажется, что Yii устанавливает значение этого атрибута равным null, если он не может найти загруженный файл. Если это небезопасно, это должно помешать этому.

Вы можете проверить мой ответ на ссылке yii forum ниже, чтобы кто-то столкнулся с подобной проблемой для получения дополнительной информации.

http://www.yiiframework.com/forum/index.php/topic/63506-how-can-i-update-records-without-adding-same-image-again/page__p__279888#entry279888

Смежные вопросы