These are chat archives for LaravelRUS/chat

3rd
Apr 2018
Андрианов Сергей
@Batisska
Apr 03 2018 09:42 UTC
$results = Product::select('products.*', 'keywords.keywords as keywords')
            ->whereRaw("to_tsvector('russian', title) @@ plainto_tsquery('russian', '$search_text')")
            ->orWhereRaw("to_tsvector('russian', keywords) @@ plainto_tsquery('russian', '$search_text')")
            ->rightJoin('keywords','keywords.product_id', '=', 'products.id')
            ->whereBetween('price', [$request->priceValue_min,$request->priceValue_max]);

В итоге так выглядит запрос.
Не применяет фильтр BETWEEN
SELECT
  "products".*,
  "keywords"."keywords" AS "keywords"
FROM "products"
  RIGHT JOIN "keywords" ON "keywords"."product_id" = "products"."id"
WHERE (to_tsvector('russian', title) @@ plainto_tsquery('russian', 'ручку') OR
       to_tsvector('russian', keywords) @@ plainto_tsquery('russian', 'ручку') AND price BETWEEN '114.30' AND '496.30') AND
      "active" = 1

Должен выглядеть так.
SELECT
  "products".*,
  "keywords"."keywords" AS "keywords"
FROM "products"
  RIGHT JOIN "keywords" ON "keywords"."product_id" = "products"."id"
WHERE (to_tsvector('russian', title) @@ plainto_tsquery('russian', 'ручку') OR
       to_tsvector('russian', keywords) @@ plainto_tsquery('russian', 'ручку')) AND price BETWEEN '114.30' AND '496.30'
      AND "active" = 1;
Подскажите как исправить?
Andrey Kushnarev
@andku83
Apr 03 2018 09:45 UTC
            ->whereRaw("to_tsvector('russian', title) @@ plainto_tsquery('russian', '$search_text')")
            ->orWhereRaw("to_tsvector('russian', keywords) @@ plainto_tsquery('russian', '$search_text')")
заменить на:
            ->whereRaw("(to_tsvector('russian', title) @@ plainto_tsquery('russian', '$search_text') OR to_tsvector('russian', keywords) @@ plainto_tsquery('russian', '$search_text'))")
Андрианов Сергей
@Batisska
Apr 03 2018 09:54 UTC
@andku83 Спасибо вроде помогло пойду тестить ))
Artem Pugachev
@temasby
Apr 03 2018 13:09 UTC
Можно ли отследить, что консольную команду оборвали?
Viktor Kulikov
@kulikovviktor
Apr 03 2018 14:16 UTC
@temasby подпишись на сигналы http://php.net/manual/ru/function.pcntl-signal.php
По-умолчанию система просто убивает процесс, если на нем нет хендлеров, которые слушают системные сигналы. Если такой есть, то управление передается хендлеру. Таким образом можно организовать graceful shutdown
Artem Pugachev
@temasby
Apr 03 2018 14:19 UTC
@kulikovviktor спасибо, изучу
JhaoDa
@jhaoda
Apr 03 2018 17:17 UTC
@kulikovviktor и на винде подпишись на сигналы?
Андрианов Сергей
@Batisska
Apr 03 2018 17:55 UTC
INSERT INTO the_table (id, column_1, column_2) 
VALUES (1, 'A', 'X'), (2, 'B', 'Y'), (3, 'C', 'Z')
ON CONFLICT (id) DO UPDATE 
  SET column_1 = excluded.column_1, 
      column_2 = excluded.column_2;
Ребят как организовать такой запрос с помощью ORM или Builder`a?
Viktor Kulikov
@kulikovviktor
Apr 03 2018 18:45 UTC
@jhaoda
На винде такой фокус не пройдёт
только зачем использовать винду в качестве хост машины, если твоё приложение не на asp.net?:)
JhaoDa
@jhaoda
Apr 03 2018 18:48 UTC
@kulikovviktor я в курсе.
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 18:48 UTC
к серваку на винде +1
ну т.е. наоборот
это упорото чуть-чуть
JhaoDa
@jhaoda
Apr 03 2018 18:48 UTC
@kulikovviktor вопрос не в том, что и когда использовать, а в том, что твоё решение имеет ограничения
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 18:48 UTC
если, конечно, не нужна специфика, вроде COM или обращений к .NET внутри пыха
Viktor Kulikov
@kulikovviktor
Apr 03 2018 18:49 UTC
@jhaoda отвергаешь - предлагай :)
JhaoDa
@jhaoda
Apr 03 2018 18:49 UTC
@kulikovviktor я не отвергаю, я за объективность
Viktor Kulikov
@kulikovviktor
Apr 03 2018 18:50 UTC
@temasby
Поделись рецептом, как решил задачу про консольную команду ?
Viktor Kulikov
@kulikovviktor
Apr 03 2018 18:57 UTC
@SerafimArts
Я бы такую задачу решал через отдельный микросервис на дотнете, который делает то что нужно с виндой и торчит наружу хттп интерфейсом и общался с ним через tcp или шину на редисе или Кафке
Шину на ребите
JhaoDa
@jhaoda
Apr 03 2018 19:02 UTC
@kulikovviktor шта? Отслеживать прерывание работы консольной команды через микросервис? Вы там в Авито все такие упоротые?
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:03 UTC
@jhaoda прекращай
JhaoDa
@jhaoda
Apr 03 2018 19:04 UTC
@SerafimArts шта?
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:04 UTC
@jhaoda он про дружбу пыха с комом и дотнетом
т.е. когда винда нужна
JhaoDa
@jhaoda
Apr 03 2018 19:04 UTC
@SerafimArts уверен?
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:04 UTC
а ты сразу в наезды
@jhaoda судя по контексту и его предложению - да
@kulikovviktor да ведь?
Viktor Kulikov
@kulikovviktor
Apr 03 2018 19:05 UTC
Да, Кирилл прав - я про дружбу
Я с телефона не могу быстро отвечать , сорян
А мы реально упоротые , в хорошем смысле слова :)
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:06 UTC
ага
ещё просите zend сертификаты от программистов?
+)
Viktor Kulikov
@kulikovviktor
Apr 03 2018 19:07 UTC
Уже не просим
Приходи :)
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:07 UTC
ну вот
уже не столь упоротые
@kulikovviktor не, меня Игорь приглашал - я не соглашался, теперь ты))))
JhaoDa
@jhaoda
Apr 03 2018 19:08 UTC
@SerafimArts зато про них рассказывают, что их эйчары могу пропасть с горизонта на пару месяцев, а потом такие «вот вам оффер, когда выходите?» А ты уже в Европу релоцировался
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:08 UTC
та это у всех бывает +)
а, кстати
сегодня в баду был, доклады прогоняли
Viktor Kulikov
@kulikovviktor
Apr 03 2018 19:09 UTC
Мы стараемся решить эту проблему , сейчас таких случаев сильно меньше
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:09 UTC
там вообще дичь
пришёл на респшн, там талон выдали, попросили расписаться, мол, "дратути, я тут мимокрокодил"
после этого на почту пришло письмо, что все технические детали, что я там увидел в офисе у них преследуется по закону
мол, ничего не выносить, ничего не воровать :D
JhaoDa
@jhaoda
Apr 03 2018 19:11 UTC
@SerafimArts издержки больших компаний
Viktor Kulikov
@kulikovviktor
Apr 03 2018 19:11 UTC
Вообще это норм:)
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:11 UTC
ну хз, у нас прям такой строгости нет
причём офис, после нашего, прям совсем крохотный
узкие коридоры, переговорки совсем мелкие
Viktor Kulikov
@kulikovviktor
Apr 03 2018 19:12 UTC
А у вас это где?
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:12 UTC
@kulikovviktor Rambler&Co
JhaoDa
@jhaoda
Apr 03 2018 19:12 UTC
Чо мы в этом болоте сидим? Дискорд жи
Kirill Nesmeyanov
@SerafimArts
Apr 03 2018 19:13 UTC
хм, в дискорд?
ну го
ой, да ещё и не в оффтопе