2017-01-03 7 views
1

私はKartikのFileInputを使ってシングルファイルのアップロードを試みています。編集モードでKartikのDetailViewに入ると、更新しようとしたとき、それは常にヌルを返ししかしYii2:KartikのFileInputとKartikのDetailViewの組み合わせ

$filedata = UploadedFile::getInstance($model, 'filedata'); 

:標準を通じてこれを行うことは、以下の戻り非ヌルとしてフォームを作成するとき

物事はうまく行きますファイル。

[ 
    'attribute' => 'filedata', 
    'visible' => Yii::$app->user->can('doIt'), 
    'type' => DetailView::INPUT_FILEINPUT, 
    'rowOptions' => ['class' => 'kv-view-hidden'], 
    'widgetOptions' => ['options' => ['accept' => 'application/pdf'], 
    'pluginOptions' => [ 
     'showUpload' => false, 
     'allowedFileExtensions' => ['pdf'], 
     'initialCaption' => $model->filename, 
    ], 
    'pluginEvents' => [ 
     'filecleared' => <whatever>, 
     'fileloaded' => <whatever>, 
    ], 
    ], 
], 

_form.phpにいる間(仕事をしている):

<?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]); ?> 

    <?= $form->field($model, 'filedata')->widget(FileInput::classname(), [ 
     'options' => ['accept' => 'application/pdf'], 
     'pluginOptions' => [ 
      'showUpload' => false, 
      'allowedFileExtensions' => ['pdf'], 
      'initialCaption' => $model->getOldAttribute('filename'), 
     ], 
     'pluginEvents' => [ 
      'filecleared' => <whatever>, 
      'fileloaded' => <whatever>, 
     ], 
    ]) 
?> 

任意のアイデア私が持っているview.php

? ('multipart/form-data'view.phpのように何とか必要であるかどうかわからないので、これを確認して詳細を記入してください。)次のようにもちろん

答えて

0

は、マルチパート/フォームデータは、同様に両方_form.phpview.phpで必要とされる:

'formOptions' => ['options' => ['enctype' => 'multipart/form-data']], 
'attributes' => [ 
... 
[ 
    'attribute' => 'filedata', 
    'visible' => Yii::$app->user->can('doIt'), 
    'type' => DetailView::INPUT_FILEINPUT, 
    'rowOptions' => ['class' => 'kv-view-hidden'], 
    'widgetOptions' => ['options' => ['accept' => 'application/pdf'], 
    'pluginOptions' => [ 
     'showUpload' => false, 
     'allowedFileExtensions' => ['pdf'], 
     'initialCaption' => $model->filename, 
    ], 
    'pluginEvents' => [ 
     'filecleared' => <whatever>, 
     'fileloaded' => <whatever>, 
    ], 
    ], 
], 
.... 
] 
関連する問題