
Dmitry
02.04.2018
13:52:27

Konstantin
02.04.2018
13:55:19
да кодируй в base64 и посылай так на сервер ?

Alexander
02.04.2018
13:59:10
Как передать параметры с middleware в controller?

Dmitry
02.04.2018
14:06:43

Google

Alexander
02.04.2018
14:13:39
Да, уже)

Romuald
02.04.2018
14:20:46

Владимир
02.04.2018
14:21:52

Romuald
02.04.2018
14:21:54

Anton
02.04.2018
14:27:34
Всем привет. нужен совет. Есть евенты, есть слушатели, есть джобы и нотификации. Имеет ли смысл в слушателе запускать джобу, которая запускает рассылку нотификаций? Или лучше напрямую в слушателе это делать?

Евгений
02.04.2018
14:56:14
Всем привет. Парни, кто-нибудь сталкивался с проблемой кеширования вьюх? Трабл в том, что по коду для шаблонов писем используется один блейд, а на почту приходит письмо с левым текстом. По содержанию понятно, что используется вьюха используемая в админке.
На локалке работает как и задумано. А вот на продакшине такая магия. Перебрал разные кешеры - эффкт один. Последняя мысль осталась - коллизии в именах кеш.файлов

Alexandr
02.04.2018
15:08:23
Джобы имеет смысл запускать отдельно чтоб иметь возможность кинуть ее в очередь

Andrey
02.04.2018
15:08:39

Alexandr
02.04.2018
15:09:24
Джобы так же можно разбивать на чанки

Maxim
02.04.2018
15:30:40
О

Edward
02.04.2018
15:47:27
Ребят есть таблица в MySQL, в которой есть поля name, surname.
Есть еще таблица в которой есть поля user_name, like
Мне нужно как-то сделать запрос чтобы вернуть единую таблицу с такими полями:
name surname count_like

Dmitry
02.04.2018
15:49:05

Google

Edward
02.04.2018
15:50:40
Есть user
Есть like(лайк который поставил пользователь)
Мне нужна табличка чтобы узнать какой пользователь поставил сколько лайков
Из одной не получится
Получить кол-во лайков у пользователя- знаю как
Я незнаю как сделать временную таблицу(если можно) чтобы в ней был столбец кол-во лайков + все поля из таблицы User

Andrey
02.04.2018
15:52:19
SELECT name, surname, COUNT(like) as count_like FROM t1 JOIN t2 ON t1.name = t2.user_name GROUP BY t1.name

Dmitry
02.04.2018
15:52:50
если конечно у тебя описана связь

Edward
02.04.2018
15:54:32
Спасибо )
Связь любая должна быть?
Вобщем то да, это то, что нужно
Спасибо

Sergey
02.04.2018
16:09:18
Привет всем. Хочу сделать статус заявок для тикетов в проекте. Естественно, первое что приходит на ум просто указать status в модели. Есть ли какой-то другой способ?

Vladimir
02.04.2018
16:16:41

q3ta
02.04.2018
16:23:26
куда в ларе пихать скрипты, стили и картинки?
public?

Sergey
02.04.2018
16:39:19
Подскажите, пожалуйста, как указать дефолтное значение для enum в миграции?

Александр
02.04.2018
16:41:32
->default();
нет?

Artem
02.04.2018
17:39:26
Ребят, за счет flood запросов у меня смогли купить несколько товаров, хотя баланс был на один. Как защититься? срочно плиз

Anton
02.04.2018
17:44:02
гыыы

Google

Anton
02.04.2018
17:44:10
лочить баланс на момент покупки
и если второй запрос тут же приходит - ждать пока лок с баланса спадет

Artem
02.04.2018
17:46:25
так делают?

Grigorii
02.04.2018
17:46:54
Объясни чуть подробнее, что у тебя случилось и как работает)

Artem
02.04.2018
17:47:13
ну по ajax видимо flood запросы на покупку
мне сам чел сказал что за счет flood запросов

Grigorii
02.04.2018
17:47:28
Я имел в виду, что есть баланс, как с БД работа идёт
Может просто транзакций хватит

Artem
02.04.2018
17:48:14
там до уменьшения баланса нужно сделать запроса 3, потом там перемешать массив уже на php, а потом уменьшаю баланс пользователя
в общем не мгновенно списывается

Grigorii
02.04.2018
17:49:03
все запросы в одну транзакцию
(а что за массив такой?)

Artem
02.04.2018
17:49:20
где рандомный предмет выбирается

Artem
02.04.2018
17:49:32
а чем транзакция поможет?
он же так же спишет баланс

Anton
02.04.2018
17:49:46
Надо лочить баланс

Artem
02.04.2018
17:50:01

Anton
02.04.2018
17:50:04
просто ты не можешь просто так залочить, а только в транзакции
как БД?

Artem
02.04.2018
17:50:23

Google

Anton
02.04.2018
17:50:37
Это я у тебя спросил - какая у тебя БД

Artem
02.04.2018
17:50:42
mysql

Андрей
02.04.2018
17:51:35
Подскажите регулярное выражение что бы вырезать номер моб. телефона с текста

Grigorii
02.04.2018
17:51:36
Если я правильно понял, как работает (а почти не понял), то достаточно засунуть все запросы в транзакцию.
Покупка произошла тогда и только тогда, когда выполнились все 3 или 4 запроса.
Если, пока они выполняются, другая транзакция полностью выполнилась, и получилось, что закончить запросы в этой транзакции нельзя - транзакция отменяется и всё хорошо

Anton
02.04.2018
17:51:53
траннакция позволяет только выполнить все или ни одного запроса

Grigorii
02.04.2018
17:52:32

Artem
02.04.2018
17:52:43
if ($user->bonus - $price * $count < 0)
return response(['error' => 'Недостаточно бонусов на балансе'], 403);

Admin
ERROR: S client not available

Artem
02.04.2018
17:52:50
у меня же это пропускает

Grigorii
02.04.2018
17:53:01

Artem
02.04.2018
17:53:41
и потом в конце я делаю $user->bonus -= $price * $count

Anton
02.04.2018
17:53:45

Grigorii
02.04.2018
17:54:40
Балланс же тоже обновляется запросом

Artem
02.04.2018
17:54:47

Anton
02.04.2018
17:54:56

Artem
02.04.2018
17:55:06
а как лочить?

Anton
02.04.2018
17:55:11
ларавель?

Artem
02.04.2018
17:55:14
да

Google

Anton
02.04.2018
17:55:52
примерно так

Artem
02.04.2018
17:56:47
?

Anton
02.04.2018
17:56:55
DB::transaction(function() use ...{
$Balanse = BalanseModel::lockForUpdate()->find(ID);
write here action
})
ну или как ты транзакции используешь

Artem
02.04.2018
17:57:17
не использую транзакции
зачем оно там

Grigorii
02.04.2018
17:57:34
Они как раз для этого там
Чтобы весь процесс покупки был "одной операцией", а не кучей маленьких, которые могут выполняться вперемешку от разных запросов

Anton
02.04.2018
17:58:29
зачем оно там
как правильно сказали выше - процесс покупки это несколько запросов и если один не прошел - остальные должны откатиться

Artem
02.04.2018
17:58:33
lockForUpdate - новое поле у юзера завести?

Anton
02.04.2018
17:58:44
Это функция такая у модели есть

Artem
02.04.2018
17:59:00
ух ты ж
а после транзакции работает да?

Anton
02.04.2018
17:59:21

Artem
02.04.2018
17:59:26
???

Anton
02.04.2018
17:59:33
Это была попытка на шутку
я не совсем понял твой вопрос

Artem
02.04.2018
17:59:44
лок спадает

Anton
02.04.2018
17:59:45
что значит - после транзакции работает...

Artem
02.04.2018
17:59:46
имею ввиду

Grigorii
02.04.2018
17:59:48
Вообще, если никогда не использовал транзакции, то может быть хорошо ещё прочитать, что такое транзакции в бД