Size: a a a

Ruby, Rails, Hanami | dry-rb

2020 February 03

ND

Nikita Didenko in Ruby, Rails, Hanami | dry-rb
как можно ускорить этот процес?
источник

ND

Nikita Didenko in Ruby, Rails, Hanami | dry-rb
хранить уже готовый файл не могу, т.к. он должен быть актуален на эту секунду
источник

NO

Nikolay Okoneshnikov in Ruby, Rails, Hanami | dry-rb
Nikita Didenko
хранить уже готовый файл не могу, т.к. он должен быть актуален на эту секунду
Вижу выход, отобразить тайм загрузки для пользователя. Ну и по возможности фронта чтоб пользователь мог юзать сервис во время генерацит
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Evgeny
Да меня интересовало не как назвать, а умеет ли aasm трекать ивенты, когда делаешь обычный .save или обычный апдейт через форму, которая скаффолдом сделана.
Оказалось, что нет.
зачем в бизнес-процессе прямое присваивание?
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Nikita Didenko
хранить уже готовый файл не могу, т.к. он должен быть актуален на эту секунду
он не будет актуален на эту секунду потому что генерируется больше этой секунды \(^_^)/
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
выносить генерацию в фоновую джобу, отдавать юзеру результат работы этой джобы с таймштампом "это данные от (начало генерации)"
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
если это апиха, то результатом запроса отдавать клиенту урл, по которому можно статус джобы посмотреть
источник

E

Evgeny in Ruby, Rails, Hanami | dry-rb
focusshifter 🤔
зачем в бизнес-процессе прямое присваивание?
Где там прямое присваивание?
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Evgeny
Где там прямое присваивание?
Ты в статус напрямую новое значение пишешь, зачем?
источник

IM

Igor Morozov in Ruby, Rails, Hanami | dry-rb
Pavel Tkachenko
И вообще как сказали выше, проще, легче в тестировании и поддержке вынести в отдельные интерактор/операцию/транзакцию

Удобно с dry-monads
operation = Operations::Humans::Kill.new
result = operation.call
case result
when Sucess
 #…
when Failure(:some_specific_error)
 #…
when Failure # other errors
 #…
end
я вот пробовал всякое, и не сказал бы, что так уж лучше
источник

PT

Pavel Tkachenko in Ruby, Rails, Hanami | dry-rb
Igor Morozov
я вот пробовал всякое, и не сказал бы, что так уж лучше
нет лучших решений, но для нас такой вариант был оптимальным (финансовое ПО)
источник

PT

Pavel Tkachenko in Ruby, Rails, Hanami | dry-rb
Nikita Didenko
Нид хелп) Есть едпоинт, который отдает csv файл, файл начинает генритьсяв момент запроса на эндпоинт, так как данных очень много, время генерации csv файла на 60000 строк занимает до 30 секунд. Все это время юзер ждет
Создавай отложенную задачу, возвращай юзеру ответ сразу с прелоадером, вебсокетом потом сообщи, что файл готов
источник

ME

Marsel Etsamoe in Ruby, Rails, Hanami | dry-rb
не совсем про руби, но думаю тут есть те кто в этом шарит. Дело такое, мне нужно получать данные с google real time reporting api.
Я сгенерировал json-файл ключ для сервисного аккаунта в google с полями type, project_id, private_key_id, private_key, client_email, client_id, auth_uri, token_uri, auth_provider_x509_cert_url, client_x509_cert_url.
Дальше правильно ли я понимаю, что мне нужно сначала пройти oauth2 авторизацию с этим ключем, получить временный токен, и с ним уже слать запросы?
источник

IM

Igor Morozov in Ruby, Rails, Hanami | dry-rb
Pavel Tkachenko
нет лучших решений, но для нас такой вариант был оптимальным (финансовое ПО)
а чем оптимальнее? Сложная логика переходов?
источник

E

Evgeny in Ruby, Rails, Hanami | dry-rb
focusshifter 🤔
Ты в статус напрямую новое значение пишешь, зачем?
Получил из внешнего апи статус по их версии. Сопоставил со своим, поменял. Примерно за этим
источник

E

Evgeny in Ruby, Rails, Hanami | dry-rb
Из админки менеджер зашел, поменял статус.
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Evgeny
Получил из внешнего апи статус по их версии. Сопоставил со своим, поменял. Примерно за этим
если ты не источник правды, то тебе не очень нужна стейтмашина. Если ты представляешь набор возможных переходов, то ты вызываешь эти переходы, а не просто присваиваешь
источник

E

Evgeny in Ruby, Rails, Hanami | dry-rb
focusshifter 🤔
если ты не источник правды, то тебе не очень нужна стейтмашина. Если ты представляешь набор возможных переходов, то ты вызываешь эти переходы, а не просто присваиваешь
Изначально источник, потом какое-то время нет, а потом опять да :)
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Evgeny
Из админки менеджер зашел, поменял статус.
Нажал на кнопку 'перевести в статус Х' тогда, а не просто выбрал из возможных вариантов
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
(Из всех возможных вариантов)
источник