@rubylang

Страница 1623 из 1684
Andrey
20.09.2018
09:03:45
execute "CREATE EXTENSION IF NOT EXISTS pg_trgm;" execute "CREATE EXTENSION IF NOT EXISTS fuzzystrmatch;"

или сделайте своего пользователя суперпользователем :)

Amir
20.09.2018
09:05:46
Заходите под супер пользователем и устанавливаете в ручную
давно помню пытался так, не катило, изменения как будто другой пользователь не видел

Di
20.09.2018
11:07:15
ребята кто в курсе что с сайто rubyjobs.ru случилось?

Google
Dmitriy
20.09.2018
11:12:11
Ркн случился

Они хостятся на DO

Вот и задело

Ilya
20.09.2018
11:13:33
он даже под впн не заходит

Di
20.09.2018
11:13:35
Ркн случился
Роскомнадзор?

долго уже лежит?

только заметил

Dmitriy
20.09.2018
11:15:15
Andrey
20.09.2018
11:18:07
Добрый день. Подскажите пожалуйста по searchkick. Есть модель, ее надо инклюдить с другой, и после делать выборку по условием для связанной модели. Должно выглядеть примерно так first_m.search(include: :second_m, where: {second_m: {id: 1}}) Но что-то в блоке where не так написано. Просто, без серчкика выглядело бы так first_m.joins(:second_m).where(second_m: {id: 1}) Итак, вопрос получается в том, как писать условия в searchkick'e, для связанных таблиц. Конкретно — блок where

Andrey
20.09.2018
11:21:17
в коде так и пишу. в ошибке пишет Unknown where operator: :id

where: {positions: {id: 2112}} Блоке where у меня такой

Или может блок include как-то по другому пишется?

Google
Igor
20.09.2018
11:41:15
where: { “second_m.id” => 1 }?

Andrey
20.09.2018
11:42:52
where: { “second_m.id” => 1 }?
Так не ругается, но возвращает nil

Alexander
20.09.2018
11:43:43
всем привет! вдруг тут кто-нибудь #emacs использует: как выделить внутренности метода/блока (желательно через evil)?

Andrey
20.09.2018
11:45:17
where: { “second_m.id” => 1 }?
Ну и сам запрос пишет, который curl, в котором есть такой блок /_search?pretty -d '{"query":{"filtered":{"query":{"match_all":{}},"filter":{"and":[{"term":{"positions.id":2112}}]}}},"size":1000,"from":0,"fields":[]}' и nil

Про блок positions.id как будто вообще не знает

Andrey
20.09.2018
12:01:26
что-то в этом стиле я бы сделал
Огромное спасибо, все получилось) Выручил

загвоздка была в том, что я метод seach_data не сделал

brute11k
20.09.2018
12:17:54


Andrey
20.09.2018
12:22:48


Переменные ${APP_HOST} лежат в .env

brute11k
20.09.2018
12:23:07
Нет, про YAML merge

«: *app

Только я хотел контролировать, от какого контейнера будет наследоваться конфигурация, через переменные среды (.env файл)

Типа <<: *${ENVIRONMENT}

Andrey
20.09.2018
12:24:42
У тебя один докер компос файл на все окружения?

brute11k
20.09.2018
12:25:02
Да

Andrey
20.09.2018
12:26:31
можно их разбить, я по крайней мере так и делаю docker-compose.dev.yml docker-compose.yml А потом уже, в .env фале пишу переменную COMPOSE_FILE=docker-compose.dev.yml

brute11k
20.09.2018
14:21:53
Google
biert
20.09.2018
14:22:57
Приветствую, можете помочь куда копать, когда делаю result.joins(:category).select(:id, :name, :price, :brand_id, :category_id, "CONCAT(categories.name, ' ', gears.name) as title").map {|x| x.attributes} тогда показывает строку, но мне формат не подходит, а если убрать map тогда нету изминений, как сделать чтобы был AR ответ, но сконкатенированая строка

Serhii
20.09.2018
15:06:01
Если при передаче параметров не укажешь ключи, то получишь ошибку

Антон
20.09.2018
15:06:04
гы первый раз так делаю link_to :отчет, url

Nikita
20.09.2018
15:06:38
Антон
20.09.2018
15:06:52
прям рубям пофиг же

def ∑( a, b)

v
20.09.2018
15:10:29
господа а чем нынче модно лечить вещи типа class Position < ApplicationRecord after_destroy do call_external_API(self) end end

Антон
20.09.2018
15:10:53
а в чем болезнь?

rekero
20.09.2018
15:11:08
def ∑( a, b)
эмодзи еще можно

v
20.09.2018
15:11:32
а в чем болезнь?
модель лезет в куда-то наружу, извещать о своей смерти

Антон
20.09.2018
15:12:02
ну... в том месте где удаляется call_external_API(object)

v
20.09.2018
15:13:36
ну... в том месте где удаляется call_external_API(object)
и все? А если она удаляется вместе с родиетелем? Типа dependent :destroy

mike
20.09.2018
15:28:17
Смотря, что делает call_external_API

емнип, destroy вернет тебе удаленный объект

Просто frozen

v
20.09.2018
15:42:16
Смотря, что делает call_external_API
вызывает внешний API

mike
20.09.2018
15:42:44
Это как бы понятно по названию

v
20.09.2018
15:43:44
Это как бы понятно по названию
ну вроде как коллбэки AR - не место для подобного?

mike
20.09.2018
15:43:58
Коллбэки AR вообще зло

В любом случае апи лучше дернуть из условного сервиса, где дестроишь объект, чем из модели объекта

Google
mike
20.09.2018
15:45:10
Ну и

v
20.09.2018
15:45:15
"А если она удаляется вместе с родиетелем? Типа dependent :destroy"?

v
20.09.2018
16:08:39
А как это мешает?
как ты дернешь условный сервис в таком случае?

mike
20.09.2018
16:11:11
?

Admin
ERROR: S client not available

mike
20.09.2018
16:13:32
курсы это не панацея. Можно найти работу выучившись по доступным бесплатным источникам. Ну, наверное и так все это знают
когда учишься сам по доступным бесплатным источникам тяжело отсеять релевантную информацию и best_practices (например) ты платишь на курсах за то, что это уже сделали до тебя и объяснили тебе простым (относительно) языком но никто не спорит, что работу так найти нельзя

v
20.09.2018
16:13:49
?
есть некий условный User, который has_many Postions, которые удалятся каскадно вместе с удалением этого User. Как вызвать некий условный сервис в случае удаления Position таким образом?

Oleg
20.09.2018
16:13:59
Привет всем. Можно ли как-то сделать, чтобы Puma перезагружал воркеры поочередно автоматически? типа puma:restart, ибо памяти что-то поедает дико, подозреваю что это action_cable и приходится перезагружать пуму раза 3 в сутки

mike
20.09.2018
16:16:08
v
20.09.2018
16:16:36
ты удаляешь user или position?
User. У него зависимые Position, которые тоже удалятся

mike
20.09.2018
16:16:46
и дёргаешь ты сервис с юзером?

v
20.09.2018
16:17:14
Google
Roman
20.09.2018
16:17:28
а вот тут можно поподробнее?
неявный вызов, бизнес-логика в модели, ты никак не управляешь этим

v
20.09.2018
16:17:30
и дёргаешь ты сервис с юзером?
никакого сервиса. Пишу user.destroy

Igor
20.09.2018
16:17:30
а зачем запрещать удалять каскадом?
Чтобы не делать странные вещи.

Oleg
20.09.2018
16:17:30
https://github.com/schneems/puma_worker_killer
Видел, боялся его заюзать ) А вообще action_cable памяти много жрет? для чатов заюзал его

mike
20.09.2018
16:17:48
никакого сервиса. Пишу user.destroy
нууууу пардон, не сервис, а апи

туда передаётся что? юзер? позишн?

v
20.09.2018
16:17:56
Чтобы не делать странные вещи.
а что странного в каскадном удалении?

Alexander
20.09.2018
16:17:59
v
20.09.2018
16:18:25
Igor
20.09.2018
16:18:28
Ты щас пытаешься решить проблему, которую можно избежать, если нормально спроектировать бизнес-логику. Это странно

Igor
20.09.2018
16:19:49
Перечитай и задай правильный вопрос

v
20.09.2018
16:21:36
Перечитай и задай правильный вопрос
из "бизнес-логики" здесь было упомянуто только каскадное удаление связанных записей

как надо "нормально" проектировать бизнес-логику в таком случае, и что "ненормального" в каскадном удалении?

mike
20.09.2018
16:24:29
если совсем приспичило, то можно приколхозить что-то в стиле positions = user.positions.to_a user.destroy positions.each { |position| call_external_API(position) } но это прям суперплохо, лучше всё-таки спроектируй нормально, да

Igor
20.09.2018
16:25:09
Ненормально не само каскадное удаление, а попытка привязать то, что у тебя происходит в приложении к событиям в бд. Если у тебя удаление зависимой сущности делается через сервис - удаление родителя тоже описывай сервисами. Тогда не придётся искать обходные пути

Igor
20.09.2018
16:26:23
Куда проще?

v
20.09.2018
16:26:23
удаление через сервис как раз выглядит обходным путем

Igor
20.09.2018
16:27:02
Ну можешь в модели метод сделать, который будет удалять. То же самое, но в другой парадигме.

Страница 1623 из 1684