dbrisinajumi / d1files
文件上传器
dev-master
2022-08-04 11:40 UTC
Requires
- php: >=5.3.2
- blueimp/jquery-file-upload: >=v10.32.0
This package is auto-updated.
Last update: 2024-09-04 16:01:22 UTC
README
特性
- 将文件附加到模型记录
- 模型视图小部件
安装
- 安装 https://github.com/blueimp/jQuery-File-Upload?source=c
- 安装 https://github.com/DBRisinajumi/d2files.git
php composer.phar require dbrisinajumi/d1files dev-master
- 添加到 config/main.php
'import' => array( 'vendor.dbrisinajumi.d1files.models.*', ), 'modules' => array( 'd1files' => array( 'class' => 'vendor.dbrisinajumi.d1files.D1filesModule', 'upload_dir' => 'root.upload', ), ),
使用方法
控制器
- 添加到访问规则,遵循以下操作:'upload','deleteFile','downloadFile'
- 添加操作
<?php public function actionUpload($model_id ) { Yii::import( "vendor.dbrisinajumi.d1files.compnents.*"); $oUploadHandler = new UploadHandlerD1files( array( 'model_name' => 'model....', 'model_id' => $model_id, 'accept_file_types' => '/\.(gif|pdf|dat|jpe?g|png)$/i', ) ); } public function actionDeleteFile($id) { Yii::import( "vendor.dbrisinajumi.d1files.compnents.*"); UploadHandlerD1files::deleteFile($id); } public function actionDownloadFile($id) { $m = D1files::model(); $model = $m->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested record in d1files does not exist.'); } Yii::import( "vendor.dbrisinajumi.d1files.compnents.*"); $oUploadHandler = new UploadHandlerD1files( array( 'model_name' => 'model....', 'model_id' => $id, 'download_via_php' => TRUE, 'file_name' => $model->file_name, ) ); }
视图
$this->widget( 'TbDetailView', array( 'data' => $model, 'attributes' => array( array( 'label' => Yii::t('FuelingModule.crud', 'Attachments'), 'type' => 'raw', 'template' => $this->widget( 'vendor.dbrisinajumi.d1files.widgets.d1Upload', array( 'controler' => $this, 'model_id' => $model->getPrimaryKey(), 'action' => 'template', ), true ), 'value' => $this->widget("bootstrap.widgets.TbButton", array( "label"=>Yii::t("FuelingModule.crud_static","Add file"), "icon"=>"icon-plusthick", 'htmlOptions' => array( 'data-toggle' => 'modal', 'onclick' => '$("#fileupload").trigger("click");' ), ),true) , ),