Size: a a a

2019 December 28

SS

Serg Serdyuk in Laravel Pro
Тоже плохо если много записей, лучше raw
источник

A

Alex in Laravel Pro
Serg Serdyuk
Тоже плохо если много записей, лучше raw
Если много записей можно обрабатывать через чанки, не вижу как raw оптимизирует количество запросов)
источник

Sᴇ

SENATOR ᴇ s ǫ ᴜ ɪ ʀ ... in Laravel Pro
Alex
Если много записей можно обрабатывать через чанки, не вижу как raw оптимизирует количество запросов)
+
источник

AG

Alexander Grigorev in Laravel Pro
Всем привет, нужна помощь
есть 2 запроса

$users = DB::connection()->select('select users.id, users.status, status.name, status.color from users left join status on users.point between status.topoint and status.point  where users.point > 0');

$users = \App\Models\User::query()
   ->select('users.id', 'users.status', 'status.name', 'status.color')
   ->leftJoin('status', static function (JoinClause $join) {
       $join->whereRaw('users.point between status.topoint and status.point');
   })
   ->where('users.point', '>', 0)
   ->get();

первый отрабатывает за 0.1 второй за 1.5 сек, запросы одниковые, join можно убрать роли не играет
Я так понимаю проблема в составлении коллекции, можно ли как-то через eloquent сразу делать массив, а не коллекцию

Данных в таблице 15 тыс, индекс point не отрабатывает, но даже FORCE INDEX (point) особо не помогает
->get()->toArray(); не дает прибавки к скорости
проблема именно в сборе коллекции

запрос типа pluck('point', 'id')->all() отрабатывает быстро
источник

ВБ

Виктор Бурцев... in Laravel Pro
что-то я не вижу чтоб запросы были одинаковые
источник

ВБ

Виктор Бурцев... in Laravel Pro
если ->toSql() сделать то они прям 1 в 1 получаются?
источник

AG

Alexander Grigorev in Laravel Pro
Да, как раз я так и сделал
источник

МК

Максим Кавецкий... in Laravel Pro
Ребят, а как делается контроллер если он от части в админке используется и для паблика подходит? Например редактирование в админке, а вывод поста для всех. То стоит ли создавать два одинаковых контроллера с разными методами? Или контроллеры не разбиваюти на файлы admin/... и обычные?
источник

MK

Maxim Kurchinskyj in Laravel Pro
Максим Кавецкий
Ребят, а как делается контроллер если он от части в админке используется и для паблика подходит? Например редактирование в админке, а вывод поста для всех. То стоит ли создавать два одинаковых контроллера с разными методами? Или контроллеры не разбиваюти на файлы admin/... и обычные?
Можно просто два метода сделать и в роуте один вынести в паблик
источник

МК

Максим Кавецкий... in Laravel Pro
Maxim Kurchinskyj
Можно просто два метода сделать и в роуте один вынести в паблик
Got it, пока что так и есть
источник

МК

Максим Кавецкий... in Laravel Pro
а является ли такой роут как "сохранение поста" апишным?
источник

МК

Максим Кавецкий... in Laravel Pro
ну т.е. его писать в апи или веб?
источник

ВБ

Виктор Бурцев... in Laravel Pro
Максим Кавецкий
Ребят, а как делается контроллер если он от части в админке используется и для паблика подходит? Например редактирование в админке, а вывод поста для всех. То стоит ли создавать два одинаковых контроллера с разными методами? Или контроллеры не разбиваюти на файлы admin/... и обычные?
ну облычно общую логику выносят куда-то в классы, а контрллеры делят
источник

DP

Dmitry Pavlichenko in Laravel Pro
Maxim Kurchinskyj
Можно просто два метода сделать и в роуте один вынести в паблик
А можно просто сделать проверку, админ или нет. Если нет, вернуть 404
источник

МК

Максим Кавецкий... in Laravel Pro
Dmitry Pavlichenko
А можно просто сделать проверку, админ или нет. Если нет, вернуть 404
я сделал для админа роутов группу (админка) и там проверка мидлвером
источник

DP

Dmitry Pavlichenko in Laravel Pro
Максим Кавецкий
а является ли такой роут как "сохранение поста" апишным?
Если собираешься через апи работать - апишный)) основная разница между ними в формате данных на входе и/или на выходе
источник

AI

Alexey Illarionov in Laravel Pro
Это все хуйня
источник

DP

Dmitry Pavlichenko in Laravel Pro
Максим Кавецкий
я сделал для админа роутов группу (админка) и там проверка мидлвером
Ну можно тогда унаследовать один контролёр от другого
источник

AI

Alexey Illarionov in Laravel Pro
Юзайте сервисы
источник

AI

Alexey Illarionov in Laravel Pro
Сервисы блядь
источник