
SkeekS CMS имеет компонент хранилища файлов. Каждый загруженный файл в данное хранилище, хранится в базе данных и имеет собственную модель данных.
Представим что у нас есть продукт Product . И мы хотим загружать изображение в файловое хранилище и првязывать его к продукту.
Задача решается следующим образом.
1) Модель Product должна содержать свойство image_id (int)
2) Модель Product должен иметь behavior
<?php
class Product extends \yii\db\ActiveRecord
{
/**
* @return array
*/
public function behaviors()
{
return array_merge(parent::behaviors(), [
\skeeks\cms\models\behaviors\HasStorageFile::className() =>
[
'class' => \skeeks\cms\models\behaviors\HasStorageFile::className(),
'fields' => ['image_id']
]
]);
}
}
И собственно в форме используется соотвествующий виджет:
<?= $form->field($product, 'image_id')->widget(
\skeeks\cms\widgets\formInputs\StorageImage::className()
); ?>
На этом все, image_id - может называться как угодно, и полей может быть сколько угодно. image1_id image2_id ...
-
Семенов Александр
- /
- 16 окт. 2015 г.
- /
- 0
- /
- 3673
Популярное
Релиз SkeekS CMS 5.6.5. Что нового в CMS в 2020 году?
- 29 апр. 2020 г.
Релиз SkeekS CMS 5.5.11 работает с yii2 2.0.24
- 13 авг. 2019 г.
Новые настройки модуля магазин skeeks/cms-shop 2.2.7.13
- 13 авг. 2019 г.
Как отправить форму в yii2 и skeeks cms через ajax?
- 18 апр. 2019 г.
Все комментарии (0)