sereja3578 / yii2-documents-widget
Package
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:yii2-extension
Requires
- php: >=7.3.0
- kartik-v/yii2-krajee-base: *
- porcelanosa/yii2-magnific-popup: master-dev
- yiisoft/yii2: 2.*
This package is auto-updated.
Last update: 2025-03-28 05:58:52 UTC
README
Для установки добавить в composer.json
"sereja3578/yii2-documents-widget": "dev-master"
Для базового использования нужно добавить в view
<?= DocumentWidget::widget([
'documentGridId' => '#document-grid-container',
'urlForAjax' => Url::toRoute('/user/user-document/get-document-url'),
'title' => Yii::t('documents', 'Скан документа'),
'options' => [
'imageContainer' => '.document-image-div',
'documentImage' => [
'class' => 'magnific-image'
]
]
]); ?>
Метод для получения пути к файлу может выглядеть например так:
/**
* Метод для ajax запроса в виджете
*
* @param $id
* @throws NotFoundHttpException
* @return string
*/
public function actionGetDocumentUrl(int $id) : string
{
$model = $this->findModel($id);
$file = $model->getFile()->one();
Yii::$app->response->format = Response::FORMAT_JSON;
return $file ? ['url' => $file->getUrl()] : ['error' => Yii::t('user', 'Нет файла')];
}
То есть у user, есть связанная с ним таблица файлов, откуда можно получить url для файла.