
Сергей
13.06.2018
06:28:21
Спасибо парни, помогло $images = Image::get()->sortByDesc('rating')->values()->all();

Nik
13.06.2018
06:33:42


Сергей
13.06.2018
06:35:37
Парни, помогите ещё разобраться со вторым вопросом)
В кратце:
Есть сущность Image, которая имеет мутатор "rating", который в свою очередь вычисляется из 2-х полей.
Эти 2 поля постоянно меняются в процессе голосования на сайте.
Так вот, на одной странице мне нужно вывести Images отсортированные по этому мутатору. С чем вы уже помогли разобраться.
Но количество Images будет большое, поэтому нужно сделать динамическую подгрузку по 10 штук.
И тут возникает ситуация,
- один пользователь загрузил 10 Images
- второй активно голосует, тем самым у нескольких Images меняется "rating"
- первый пользователь загружает ещё 10 штук
и тут уже сортировка нарушится,
Как быть в этой ситуации?
Единственное что приходит в голову, загрузить 10, потом 20 и обновить список удалив\подменив первые 10, и так далее 30, 40, 50
Но может есть более правильные решения, прошу совета))


Denis
13.06.2018
06:45:44
почему лучше?
sortByDesc + values - это 2 обхода по коллекции. А присортировке на стороне базы сразу получаем нужную коллекцию

Google

Denis
13.06.2018
06:46:51
Не факт, что это даст какой-то прирост производительности. Но если бд сама умеет отсортировать, зачем изобретать велосипед?
Если я правильно понял предыдущее сообщение Korg, и rating является аксессором, то на стороне бд сортировка не прокатит. Тогда моя теория неверна

Yevgen
13.06.2018
06:48:42
Всем привет. Уважаемые, подскажите, пожалуйста как я могу выкрутиться в ситуации когда в $request есть несколько файлов и я пытаюсь обойти их foreach, нужно написать что то вроде $request->$key? Вместо $key должно подставлять имя текущего инпута

Kirill
13.06.2018
06:52:26
Подскажите, для Eloquent можно ли билдером составить запрос - если есть связь - одни условия для запроса, если нет связи - другие ?


Артур
13.06.2018
06:54:23
Парни, помогите ещё разобраться со вторым вопросом)
В кратце:
Есть сущность Image, которая имеет мутатор "rating", который в свою очередь вычисляется из 2-х полей.
Эти 2 поля постоянно меняются в процессе голосования на сайте.
Так вот, на одной странице мне нужно вывести Images отсортированные по этому мутатору. С чем вы уже помогли разобраться.
Но количество Images будет большое, поэтому нужно сделать динамическую подгрузку по 10 штук.
И тут возникает ситуация,
- один пользователь загрузил 10 Images
- второй активно голосует, тем самым у нескольких Images меняется "rating"
- первый пользователь загружает ещё 10 штук
и тут уже сортировка нарушится,
Как быть в этой ситуации?
Единственное что приходит в голову, загрузить 10, потом 20 и обновить список удалив\подменив первые 10, и так далее 30, 40, 50
Но может есть более правильные решения, прошу совета))
Тебе нужен список на конкретное время.
Есть 2 варианта
1. Получить id всех фото, сохранить в сессию, отдавать постранично.
Плюсы: быстро
Минусы : жрет место, сессия большая может быть, нужно думать об открытии нескольких вкладок
2. Запомнить дату начала генерации списка. Отдавать список по состоянию на указанное датавремя
Плюсы: ничего не надо помнить в сессии, нет емкой логики на бд
Минусы: Нужна история голосов. Нужно делать срез за период, а это провоцирует нагрузку на бд.
Как убрать нагрузку: Для того чтобы не было нагрузки, можно сохранять ежедневные срезы и от них считать динамику.


Serge
13.06.2018
06:54:42
Здравствуйте. Надо админпанель, что есть хорошего для ларки из админок. На yii2 использовал AdminLTE, сейчас вот надо выбрать для ларки.

Сергей
13.06.2018
06:54:56

Иван
13.06.2018
06:55:19

Serge
13.06.2018
06:55:37
Ок

Yevgen
13.06.2018
06:55:59
$request[$key]

Serge
13.06.2018
06:56:28
Ну и Voyager вижу многие хвалят как админку

Oleg
13.06.2018
06:57:07

Google

Nik
13.06.2018
06:57:28

Oleg
13.06.2018
06:57:58
Или же $request->files()

Сергей
13.06.2018
06:59:27

Nik
13.06.2018
06:59:57

Артур
13.06.2018
07:01:09

Сергей
13.06.2018
07:01:45
зачем 2 поля?
рейтинг = количество батлов / количество побед * 100%

Артур
13.06.2018
07:02:04
Ну или помнить все ид в сессии

Сергей
13.06.2018
07:04:35

Oleg
13.06.2018
07:06:20

Сергей
13.06.2018
07:07:06

Oleg
13.06.2018
07:07:33
Высчитывать рейтинг раз в промежуток времени

Сергей
13.06.2018
07:08:28
А такой вопрос, какое максимальное количество можно выбрать из БД, что бы не создать жёсткую нагрузки и по времени выборка не занимала много?

Nik
13.06.2018
07:18:35

Евгений
13.06.2018
07:25:20
Кто нибудь использовал https://docs.spatie.be/laravel-medialibrary/v7/ ?
Не понял как поменять структуру каталогов для хранения файлов
а тьфу, нашел в доке
спать по 4 часа плохо :(

Vadim
13.06.2018
07:31:14
А 2 вообще жесть

Google

Serge
13.06.2018
07:39:32
А есть дополнение для загрузки картинок для записи в таблице (для статьи например). То есть область куда можно перетянуть либо загрузить картинку через кнопку, сразу в этой области отображаются превью картинок, где их можно удалить, добавить отсортировать и так для любой статьи?

Kirill
13.06.2018
07:45:34
вызываешь не параметр, а метод, и модифицируешь его
$image = \App\Image::query()
->with(['activity', 'users'])
->whereDoesntHave('rectangles')
->whereDoesntHave('positions')
->whereDoesntHave('users', function ($query) {
$query->where('status', '=', 'new');
})
->orWhereHas('users', function ($query) {
$query->where('status', '=', 'in-progress');
})
->get();
оно? параллельно вопрос, как отсортировать по полю activity.status ?

Nik
13.06.2018
07:48:50

Danja
13.06.2018
07:59:17

Георгий
13.06.2018
08:07:36
хай все
а кто использует phpstorm? подскажите как настроить дебаггер для ларавель на него или статью какую)

Maksim (Ellrion)
13.06.2018
08:10:10

Сергей
13.06.2018
08:11:07
подскажите как сделать так чтобы сервер отдавал медиа файлы по api? что сделать с корсами нужно? У меня стоит пакет cors но он не работает для отдачи файлов по апи для загрузки.

Yevgen
13.06.2018
08:21:19

Георгий
13.06.2018
08:36:05

M
13.06.2018
08:36:31

Pavel
13.06.2018
08:42:27
кто подскажет что не так? делаю валидацию ввожу текст а оно не проходит

Сергей
13.06.2018
08:43:45
Парни, подскажите в таком вопросе:
Есть таблица, нужно обновить все записи, а именно одну колонку
Что бы в этой колонке поле А для каздой записи было равна = поле В + поле С

Nik
13.06.2018
08:47:49

Pavel
13.06.2018
08:50:22
?

Nik
13.06.2018
08:50:49
что я тебе должен ответить?

Google

Nik
13.06.2018
08:53:24
нейм ты забыл полям указать, и ненадо сюда скрины отправлять

Pavel
13.06.2018
08:59:15
спасибо сори

Maksim
13.06.2018
09:10:22
Ребят, а кто-нибудь с кластером редиса работал?

Nikolay
13.06.2018
09:10:38
Я
В пм

Roman
13.06.2018
09:58:07
Ребята привет.
При определенных условиях, мне необходимо запустить 3 команды ларавел последовательно: artisan migrate, artisan db:seed, artisan vendor:publish.
Следующая команда должна запускаться при завершении предыдущей. В случае ошибки, следующая команда не запускается.
Подскажите как решить эту проблему или куда смотреть.

Nikolay
13.06.2018
10:00:05
ты можешь создать одну команду которая это все сделает
и с блоками try catch отлавливать ошибки

Roman
13.06.2018
10:00:57

Nikolay
13.06.2018
10:01:38
в catch выставлять статус =false
и перед каждым шагом проверять статус

AM
13.06.2018
10:06:00

Roman
13.06.2018
10:07:08
Вроде через Schedule можно

AM
13.06.2018
10:12:34

Nikolay
13.06.2018
10:13:44
+

Иван
13.06.2018
10:14:09

Roman
13.06.2018
10:20:25

Иван
13.06.2018
10:20:49
В консоли

Google

Roman
13.06.2018
10:21:06

Denis
13.06.2018
10:23:22
Разве Artisan::call() исполняет команды асинхронно?
Artisan::queue() исполняет в бэкграунде

Nik
13.06.2018
10:26:17

Roman
13.06.2018
10:26:44

Nik
13.06.2018
10:26:52

mr_makss
13.06.2018
10:28:01

Nik
13.06.2018
10:28:14

Roman
13.06.2018
10:28:18

mr_makss
13.06.2018
10:28:41
прям так и было new Thread
))

Nik
13.06.2018
10:29:29
ларке не нужны pthreads
откуда у него возьмется не синхронный код там?

mr_makss
13.06.2018
10:30:05
ну это ему решать))
"иногда думаешь какой му... пишет обновления к php"