Здравствуйте!
Вопрос по виджету https://github.com/vova07/yii2-fileapi-widget
Как получить имя загруженного файла, чтобы потом сохранить его в базу?
я думаю должен быть какой то статический метод getNameFile
Но ведь загрузку делает behaviors и из него надо вытянуть имя с которым он файл загрузил.
Еще вопрос, сейчас оформление виджета выглядит так http://joxi.ru/RmzonKGcWyg5Z2 , но а если посмотреть документацию самой яваскрипт библиотеки, которая делает crop http://rubaxa.github.io/jquery.fileapi/ то там это выглядит так http://joxi.ru/l2ZxZn9c84dLRr
Как такое оформление сделать в Yii-виджете и возможно ли это?
vova07/yii2-fileapi-widget имя загруженного файла
vova07/yii2-fileapi-widget имя загруженного файла
Сайт по работе в Украине: https://jobis.com.ua/. Сайт по поиску строителей: https://stroyzakaz.com.ua/
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Re: vova07/yii2-fileapi-widget имя загруженного файла
1. Читайте исходники виджета + документацию виджета.
2. Читайте документацию этой js-библиотеки. Например, по вашей ссылке я вижу полное описание как это сделать, и JS-код, и HTML-код.
2. Читайте документацию этой js-библиотеки. Например, по вашей ссылке я вижу полное описание как это сделать, и JS-код, и HTML-код.
Re: vova07/yii2-fileapi-widget имя загруженного файла
Вывод настроил, переопределил свойства templete на свое:
Код: Выделить всё
'template' => '@frontend/views/fileapi/single.php'
Но не могу разобраться с поведением:
Код: Выделить всё
public function behaviors()
{
return [
'uploadBehavior' => [
'class' => UploadBehavior::className(),
'attributes' => [
'preview_url' => [
'path' => '@frontend/web/images/previews',
'tempPath' => '@frontend/web/images/temp/previews',
'url' => '/images'
],
'image_url' => [
'path' => '@frontend/web/images/images',
'tempPath' => '@frontend/web/images/temp/images',
'url' => '/images'
]
]
]
];
}
Код: Выделить всё
public function actionUpload()
{
$model = new Photo();
$model->preview_url = UploadedFile::getInstanceByName('file');
if ($model->load($_POST)) {
print_r($model);exit;
}
}
Сайт по работе в Украине: https://jobis.com.ua/. Сайт по поиску строителей: https://stroyzakaz.com.ua/
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Re: vova07/yii2-fileapi-widget имя загруженного файла
там же автоматически название пишется в базу.
Я помню мне надо было делать еще превьюшки к основному файлу, я наследовался от extends \vova07\fileapi\behaviors\UploadBehavior
и переопределял метод saveFile, вообщем отнаследуйтесь и посмотрите $this->owner->$attribute
Я помню мне надо было делать еще превьюшки к основному файлу, я наследовался от extends \vova07\fileapi\behaviors\UploadBehavior
и переопределял метод saveFile, вообщем отнаследуйтесь и посмотрите $this->owner->$attribute
ភាសាខ្មែរ Yii2 - это кайф!
Re: vova07/yii2-fileapi-widget имя загруженного файла
Не могу понять как правильно экшен реализовать, чтобы данные имени файла в базу писались:
вот мой экшен:
Код: Выделить всё
public function actionFileapiUpload()
{
$model = UserOnly::findOne(Yii::$app->user->id);
$model->load($_POST);
$file = UploadedFile::getInstanceByName('file');
$model->image = $file->tempName;
$model->save();
print_r($model->getErrors());
}
вот моя модель:
Код: Выделить всё
public function rules()
{
return [
[['image'], 'file', 'extensions' => 'jpg, gif, png'],
];
}
public function behaviors()
{
return [
'uploadBehavior' => [
'class' => UploadBehavior::className(),
'attributes' => [
'image' => [
'path' => '@webroot/upload/profile',
'tempPath' => '@webroot/upload/profile/temp',
'url' => '/upload/profile'
],
]
]
];
}
Сайт по работе в Украине: https://jobis.com.ua/. Сайт по поиску строителей: https://stroyzakaz.com.ua/
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Создание сайтов в Киеве: https://webplus.com.ua/ по доступной цене.
Re: vova07/yii2-fileapi-widget имя загруженного файла
там из коробки все работает и в базу пишется.
rules
[['pic'], 'string', 'max' => 255],
rules
[['pic'], 'string', 'max' => 255],
ភាសាខ្មែរ Yii2 - это кайф!