Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
NikVolkov
Сообщения: 83
Зарегистрирован: 2015.03.24, 22:03

Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение NikVolkov »

После обновления фото превьюшки не обновляются в yii-dream-team/yii2-upload-behavior
Создаются, если файл превью удалить.
Может, какая-то настроечка есть?
NikVolkov
Сообщения: 83
Зарегистрирован: 2015.03.24, 22:03

Re: Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение NikVolkov »

Этот флажок я ставил в true
Там было дело в другом - не было поля в БД, вместо него public $photo в AR модели.
Т.е. поведению неоткуда было брать путь.

Добавил поле в БД, но в него записывается оригинальное имя файла, а не то, которое в параметрах вписано

Код: Выделить всё

...
'filePath' => '@frontend/web/images/Tarif/[[attribute_name_eng]].[[extension]]',
...
Неужели оно само это не проставляет правильно или я что-то не так делаю?
andku83
Сообщения: 988
Зарегистрирован: 2016.07.01, 10:24
Откуда: Харьков

Re: Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение andku83 »

NikVolkov писал(а): 2018.10.17, 15:40 Добавил поле в БД, но в него записывается оригинальное имя файла, а не то, которое в параметрах вписано
так и должно быть, по правилу в модели оно генерирует имя файлу, а в БД хранит то с которым загружали.
NikVolkov
Сообщения: 83
Зарегистрирован: 2015.03.24, 22:03

Re: Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение NikVolkov »

Значит, ручками изменять значение атрибута для БД?
Из beforeSave?
NikVolkov
Сообщения: 83
Зарегистрирован: 2015.03.24, 22:03

Re: Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение NikVolkov »

Чтобы поведение получало путь к файлу
Например, при вызове getThumbFileUrl()
andku83
Сообщения: 988
Зарегистрирован: 2016.07.01, 10:24
Откуда: Харьков

Re: Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение andku83 »

оно его получит по:
thumbPath
thumbUrl
NikVolkov
Сообщения: 83
Зарегистрирован: 2015.03.24, 22:03

Re: Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение NikVolkov »

оно его получит по:
thumbPath
thumbUrl
В том-то и беда, что для thumb не получает

Поведение сконфигурировано так:

Код: Выделить всё

'filePath' => '@imagesRoot/Tarif/[[attribute_name_eng]].[[extension]]',
'fileUrl' => '@images/Tarif/[[attribute_product_id]].[[extension]]',
'thumbPath' => '@imagesRoot/Tarif/[[profile]]_[[attribute_name_eng]].[[extension]]',
'thumbUrl' => '@images/Tarif/[[profile]]_[[attribute_name_eng]].[[extension]]',
Основную картинку создаёт при create и заменяет при update
А миниатюрку создаёт, но при update не заменяет
Если файл миниатюрки удалить вручную, то создаст, но если такая миниатюрка уже есть - не заменяет

Если добавить в БД поле по атрибуту и проставлять в него

Код: Выделить всё

[[attribute_name_eng]].[[extension]]
то и миниатюрку обновляет
NikVolkov
Сообщения: 83
Зарегистрирован: 2015.03.24, 22:03

Re: Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение NikVolkov »

Вернул поле в БД, всё заработало, а в поле пишется оригинальное имя файла, которое не используется.
Так-то работает, но зачем ему тогда поле в БД, если пути он берёт из thumbPath и thumbUrl?
andku83
Сообщения: 988
Зарегистрирован: 2016.07.01, 10:24
Откуда: Харьков

Re: Не обновляются превьюшки после обновления фото yii-dream-team/yii2-upload-behavior

Сообщение andku83 »

Это вы его не используете, а поведение может использовать:
https://github.com/yii-dream-team/yii2- ... #L156-L159
Ответить