@proRuby

Страница 802 из 1594
Fedor
11.10.2017
07:45:26
там определяется api, transport и.т.д.

в рельсе это обычно все завернуто через elasticsearch_proxy, кторое работает через модель

Mark
11.10.2017
07:46:21
ок

буду разбираться

Google
Mark
11.10.2017
07:47:59


Fedor
11.10.2017
07:48:36
да

Mark
11.10.2017
07:49:10
??

Fedor
11.10.2017
07:49:10
https://www.chewy.com/

)))

Mark
11.10.2017
07:49:28
:D

Alex
11.10.2017
09:44:39
https://habrastorage.org/webt/59/dd/d6/59ddd6467ea2f175840109.jpeg

Alexander
11.10.2017
10:10:34
@davydovanton а подскажи по архитектуре дра транзакций. допустим мне надо сделать create но там будут создавать 3 зависимые модели. post, comments, author например. как это лучше описать в шагах. или может это будут три транзакции обединенные в цепь?

Anton
11.10.2017
10:13:27
я бы на самом деле посоветовал бы обернуть все в один метод (#call) а потом уже понять, что и как на шаги разбивать. что бы интерфейс выглядил как транзакция, можешь вот такую штуку заинклюдить в класс: include Dry::Matcher.for(:call, with: Dry::Matcher::EitherMatcher) тогда, если твой сервис будет возвращать either монаду, передавая с вызовом call блок - сможешь работать как с "транзакцией"

а потом, как будут тесты + вся логика в одном месте - сможешь понять какие шаги нужны и заинклюдить транзикцию и спокойно все раскидать

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

Alexander
11.10.2017
10:16:31
ааааа.... сложна!!!! то есть сначала сделать одну транзакцию со стандартными шагами(validate, persist итд) а потом уже будет видно? просто я не понял зачем там нужна Either монада, когда уже есть право и лево

Anton
11.10.2017
10:21:29
https://gist.github.com/davydovanton/d8e9bd390b2f2e496a49011a7be32913

Google
Anton
11.10.2017
10:21:48
в таком случае у тебя интерфейс будет один и тот же, но уже в самом объекте сможешь делать что захочешь

и переписать его на транзакции

+ у тебя тесты не поломаются, потому что интерфейс не поменяется

ну собственно. в чем беда обычно? не знаешь требований и не знаешь какой код напишешь. Плюс тебе проще разделять уже существующий код на какие-то шаги. Вот таким подходом ты: 1. сначала изолируешь логику в один объект с одним интерфейсом 2. написав логику, начинаешь разделять ее (интерфейс объекта основного не меняется) 3. когда какой-то шаг становится слишком большим (сам поймешь), изолируешь его в отдельный объект ... PROFIT

Anatoly
11.10.2017
10:57:53
Ребят, почему валидация рельсы в случае с uniqueness + scope не может смотрит уникальный индекс, а делает запрос в базу SomeModel Exists (0.3ms)

Alexander
11.10.2017
10:59:36
теперь сайдкик. например мне надо поднять один сайдкик с канкаренси 25 и другой с 15, это как нызвается в рамках сайдкика? как нагуглить?

Alexander
11.10.2017
11:46:51
pool же
что то я не нашел такого

похоже надо будет как то два сайдкика поднимать рядом с разными конфигами

Alex
11.10.2017
11:48:20
сайдик думаю вполне себе аргументы принимает

Vasiliy
11.10.2017
11:49:38
нужно больше сайдкиков богу сайдкиков

Alexander
11.10.2017
11:49:41
да я думую разбить сервис с нашими бекграугд жобами, на 2 и больше. хотя надеялся обойтись каким то расширенным конфигом

Alex
11.10.2017
11:51:02
что то я не нашел такого
https://github.com/laurynas/sidekiq-pool

серьезно? не нашел? :)

Alexander
11.10.2017
11:54:12
https://github.com/laurynas/sidekiq-pool
хм... я искал внутри документации. а это оказался отдельный гем. ну ок. спасибо. ща посмотрю. видимо это то что мне и нужно

Alex
11.10.2017
11:54:44
> я искал внутри документации

я в первую очередь забил бы в гугол, а потом из гугла выскочил либо в документацию гема, либо на сторонний гем.

Ярослав
11.10.2017
11:59:23
Ребят, почему валидация рельсы в случае с uniqueness + scope не может смотрит уникальный индекс, а делает запрос в базу SomeModel Exists (0.3ms)
Наверное, потому что в реляционных базах данных нельзя напрямую смотреть в индекс)

Google
Alexander
11.10.2017
14:30:38
grape-swagger + rails api mode выдает мне на страницу со сваг докумментацией просто жсон. что я делаю не так?

Alexey
11.10.2017
14:36:13
хм... я искал внутри документации. а это оказался отдельный гем. ну ок. спасибо. ща посмотрю. видимо это то что мне и нужно
Ты можешь при старте процесса сайдкика указать файл с конфигом. И логично завести два независимый файла, для разных процессов сайдкика UPDATE В файле конфига уже управлять concurrency

Dmitriy
11.10.2017
14:36:40
Ребят, кто знает, как в Capfile получить значение environment, который передается при вызове CLI команды капистрано cap staging deploy? Т.е. в Capfile нужно понять staging или production передается параметром

Alex
11.10.2017
14:38:29
fetch вроде

по крайней мере в сценариях он был насколько я помню

можно внутри сценария посмотреть где fetch определен.

Alexey
11.10.2017
14:39:44
Вроде stage если юзается capistrano/ext/multistage

Dmitriy
11.10.2017
14:44:12
спасибо, посмотрю

вот так вот еще можно: ARGV[0]

Максим
11.10.2017
15:01:30
пацнацы

делали с эмбером чего?

не могу понять как наш фронт работает вообще

Dmitriy
11.10.2017
15:38:43
Да...а в чем вопрос?

Максим
11.10.2017
16:09:22
Да чет не могу ща понять вообще как Эмбер работает

Типа на базовом уровне

Ну типа вот апи вот эмбер

Вот стукнулись получили джсон

Что дальше

Aldar
11.10.2017
16:10:55
дальше магия

Google
Максим
11.10.2017
16:13:25
Примерно так и я вижу

Dmitriy
11.10.2017
16:26:05
Эм...ну есть определенные составляющие, изучаешь компонент за компонентом и понимаешь как это работает.

Документацию почитай, хз что ещё посоветовать ))

Lupsick
11.10.2017
18:26:17
посоны, а pry работает в production?

Dmitriy
11.10.2017
18:26:35
лооооллл

а зачем?

Lupsick
11.10.2017
18:26:59
я оставил брейкпоинт давно лол

забыл

Dmitriy
11.10.2017
18:27:08
пхах _)

Dmitriy
11.10.2017
18:27:09
а зачем?
Чтобы забыть его там и повесить сервак

Lupsick
11.10.2017
18:27:10
ща нашел

он должен отключаться в проде

так-то

Dmitriy
11.10.2017
18:27:45
посоны, а pry работает в production?
Убери его из Production в геме

Dmitriy
11.10.2017
18:28:01
ну он должен быть в дев тест групе

Lupsick
11.10.2017
18:28:02
Убери его из Production в геме
binding.pry будет работать?

Nikolay
11.10.2017
18:28:06
если гем в общей группе, то остановится

Lupsick
11.10.2017
18:28:27
лол ну короче в общей

ладно

Nikolay
11.10.2017
18:29:06
иначе в проде нельзя было б дебажить

Google
Nikolay
11.10.2017
18:29:15
а без этого как жить-то

*табличка сарказм*

Dmitriy
11.10.2017
18:30:46
puts debugging

Alex
11.10.2017
18:33:12
посоны, а pry работает в production?
если в гемах прода не присутствует - кинет эксепшон что не может binding.pry найти

в докере - binding.pry если не терминал напрямую то не отрабатывает

Lupsick
11.10.2017
18:33:37
если в гемах прода не присутствует - кинет эксепшон что не может binding.pry найти
ну оно видимо просто в эту логическую ветку не заходило)))00))

Alex
11.10.2017
18:33:39
выкидывает в отладочную сессию и сразу из нее выходит

но хер знает, может и зависнет

Lupsick
11.10.2017
18:33:50
а

у нас докер

Alex
11.10.2017
18:34:17
у меня в docker up оно показывало отладочную сессию и сразу заканчивало

а вот в docker run все как надо.

Anton
11.10.2017
18:34:26
у нас докер
Звучит как приговор

Alex
11.10.2017
18:34:32
Anton
11.10.2017
18:34:40
Или так, да

Alex
11.10.2017
18:42:06
а как ты это понял?
запускаешь binding.pry в docker up

а потом в docker run

Страница 802 из 1594