Size: a a a

2020 April 03

S

SupportBtc in Laravel Pro
Привет, ребята.

В ларавель используется визифиг quilljs.

Я уже сутки гуглю и не могу найти, подскажите пожалуйста.

Как валидировать изображение?

На клиенте или хотя бы уже на беке (ларе)

quilljs в нём можно загружать изображение, как сделать проверку и сделать лимит за загрузку изображение по размеру, не ширина/высота, а место на диске?

Пожалуйста.
источник

BI

Bogdan Ivanov in Laravel Pro
SupportBtc
Привет, ребята.

В ларавель используется визифиг quilljs.

Я уже сутки гуглю и не могу найти, подскажите пожалуйста.

Как валидировать изображение?

На клиенте или хотя бы уже на беке (ларе)

quilljs в нём можно загружать изображение, как сделать проверку и сделать лимит за загрузку изображение по размеру, не ширина/высота, а место на диске?

Пожалуйста.
laravel validation required|file|size:123456
источник

S

SupportBtc in Laravel Pro
Bogdan Ivanov
laravel validation required|file|size:123456
а как? там же приходит все в content и текс и изображения
источник

A

Alexander in Laravel Pro
SupportBtc
Привет, ребята.

В ларавель используется визифиг quilljs.

Я уже сутки гуглю и не могу найти, подскажите пожалуйста.

Как валидировать изображение?

На клиенте или хотя бы уже на беке (ларе)

quilljs в нём можно загружать изображение, как сделать проверку и сделать лимит за загрузку изображение по размеру, не ширина/высота, а место на диске?

Пожалуйста.
https://laravel.com/docs/7.x/validation#rule-dimensions
https://laravel.com/docs/7.x/validation#rule-max
типа такого может быть:
'required|image|max:5000|dimensions:min_width=1000,min_height=1000'
источник

A

Alexander in Laravel Pro
SupportBtc
а как? там же приходит все в content и текс и изображения
типа как bash64?
тогда через intervention/image можно создавать изображение, чекать его размеры и пр, а потом уже сохранять
* разве не отдельным запросом ajax загрузка идет?
источник

S

SupportBtc in Laravel Pro
источник

S

SupportBtc in Laravel Pro
"content" => "{"ops":[{"insert":"dddd"},{"insert":{"image":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxw
источник

S

SupportBtc in Laravel Pro
это если посмотреть  в
``dd($request->all());`
источник

S

SupportBtc in Laravel Pro
и как мне в этом случае валидировать изображение?
источник

A

Alexander in Laravel Pro
А что, никак нельзя отдельным запросом грузить? (где-то true в настройках поставить)
источник

A

Alexander in Laravel Pro
его просто отвалидировать надо, без сохранения на диске ж? и замены src на путь к файлу?
источник

S

SupportBtc in Laravel Pro
он сохраняется...там уже всё сделано, нужно изображение которое юзер грузит в этот редактор проверить ра его размер, если он больше лимита, тогда выдать ошибку...
источник

A

Alexander in Laravel Pro
просто очень странный редактор тогда))
а что если там статья огромная и в ней 20 файлов по мегабайту каждый...
источник

S

SupportBtc in Laravel Pro
Alexander
просто очень странный редактор тогда))
а что если там статья огромная и в ней 20 файлов по мегабайту каждый...
это комментарий...сказали поставить лимит 5 мб на загрузку изображения
источник

A

Alexander in Laravel Pro
SupportBtc
он сохраняется...там уже всё сделано, нужно изображение которое юзер грузит в этот редактор проверить ра его размер, если он больше лимита, тогда выдать ошибку...
тогда надо кастомное правило + возможно http://image.intervention.io/
и будет типа такого:
$img = Image::make($base64);
return $img->width() < 1000 && $img->height() < 1000 && (strlen($base64) / 1.33) < FILESIZE_BYTES;
источник

SK

Svetlana Kris in Laravel Pro
источник

A

Alexander in Laravel Pro
Alexander
тогда надо кастомное правило + возможно http://image.intervention.io/
и будет типа такого:
$img = Image::make($base64);
return $img->width() < 1000 && $img->height() < 1000 && (strlen($base64) / 1.33) < FILESIZE_BYTES;
1.33 - это оверхед для base64, т.е. чистых данных там в 1.33 раза меньше (т.е. размер файла в байтах)
* вроде так, обязательно чекнуть надо будет в вики
источник

D

Dymon in Laravel Pro
SupportBtc
он сохраняется...там уже всё сделано, нужно изображение которое юзер грузит в этот редактор проверить ра его размер, если он больше лимита, тогда выдать ошибку...
можно сначала на фронте валидировать. Для этог нужно довавить свой хандлер для картинок this.editor.getModule("toolbar").addHandler("image", imgHandler); https://github.com/quilljs/quill/issues/1400
источник

D

Dymon in Laravel Pro
а в базу как ты это будешь сохранять? все вместе или картинки отдельно?
источник

S

SupportBtc in Laravel Pro
Dymon
а в базу как ты это будешь сохранять? все вместе или картинки отдельно?
всё вместе сохраняется в поле content
источник