23 дек. 2018 г., 14:55

Сохранение изображений в migx массовая загрузка изображений до сохранения документа

В блоге Песочница

Добрый вечер!
Поставил migx multiupload (https://docs.modx.com/extras/revo/migx/migx.tutorials/migx.use-resource-specific-mediasource-and-multifile-uploader), но документ изображения сохраняются только после сохранения документа, тк id еще не создан а файлы берутся из папки с id документа, подскажите как реализовать загрузку до сохранения документа, или авто сохранения документа при создании. Спасибо!
Добрый вечер!

Ответ: практически никак. Если у вас путь не будет динамическим, то у вас будут все картинки в куче. А делать автосохранение документа на загрузку - там другие проблемы (какие-то поля обязательные не будут заполнены) и думать как их автозаполнить для автосохранения...

Есть пара вариантов:
1. Уберите id из пути конфигурации мультиаплоэда. Я точно не скажу, но есть подозрение, что он все-таки будет различать картинки для разных директорий, просто они будут лежать все в куче и сложнее будет потом из них выбирать для других документов. Если так будет работать, то по идее, ваш вопрос решается. Далее придется только воевать с неудобством. Если предполагается, что картинок будет не очень много (штук так тысяча), то можно не париться (но скорее всего это не так). Рекомендую вообще тогда сделать под это отдельный медиасурс и в настройках запретить прямой просмотр в админке, чтобы не открывали его (чтобы не мучить браузер).
2. Если куча файлов в одной папке напрягает, то можно так же закидывать файлы в общую, но написать плагин на сохранение документа, чтобы в момент сохранения, если это новый документ был, создавать для него подпапку по ID, перекидывать все картинки в нее и обновить пути их в TV-шке. Но этот путь не очень крут, ибо есть вероятность перекинуть чужие картинки (начать редактировать один документ, перейти другой создавать, а там уже есть картинки). Да и плагин такой будет не просто написать.

P.S. кстати, у себя в @prisma-cms я так и сделал, что картинки можно загружать независимо от документа, а потом в момент сохранения уже устанавливаются связи.
Попробовал, если сделать просто путь на папку хранилища не видит файлы из папки хранилища те нету связей, связь появляется только в момент создания папки, а чтобы папку создалась нужно вызвать сохранение документа. Обязательно попробую вашу cms на следующем проекте
Ясно. Печалька...

Не, под коммерческий проект сразу так не стоит. А поиграться, чтобы JS подосвоить - вполне можно. Позже, когда будет больше документации и готовых решений, будет проще.

Добавить комментарий