@proRuby

Страница 678 из 1594
Alex
25.08.2017
14:19:47
ELM стэк (но я не шарю)

Andrey
25.08.2017
14:21:25
ну например - пользователь сделал заказ - пользователь оплатил заказ - пользователь схватил ошибку платежки

до поры до времени просто в базу PG писали, но она что-то разрослась что пипец

Mikl
25.08.2017
14:22:07
Еластик для этих задач хорош

Google
Mikl
25.08.2017
14:22:15
я делал аналитику на нем

Быстрые агрегации, с большим обьемом документов может работать

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

Andrey
25.08.2017
14:23:46
Смотрим на Fluentd + Elasticsearch + Kibana

или ELK

Mikl
25.08.2017
14:24:22
Смотрим на Fluentd + Elasticsearch + Kibana
хороший выбор, кибана хороша, поверх можно прикрутить search guard для авторизации

Но я бы посоветовал еще дублировать в постгрес

чтобы можно было если что пересобрать индекс спокойно

да и понадежнее будет

Vasiliy
25.08.2017
14:29:31
тут кстати как варик можно пг подчищать старые записи

Andrey
25.08.2017
14:33:41
вот про переиндексацию это хорошо напомнили, у меня на позопрошлом проекте довольно резулярно приходилось перестраивать

Gleb
25.08.2017
14:37:02
Если архитектура на докерах ELK самый крутой и быстрый вариант

Google
Andrey
25.08.2017
14:40:48
кафка?
грефневая? (простите за странный юмор, несдержался)

Антон, а из Кафки куда? в БД?

Anton
25.08.2017
14:42:39
да как хочешь

почитай про эвент сорсинг

Mikl
25.08.2017
14:58:20
кафка или rabbitmq дя сбора событий

чтобы потом можно было их индексировать

Mark
25.08.2017
15:15:43
Всем привет, в чем может быть проблема?



то есть при первом вызове интерактора пишет что не подгружена Rate::ManualRate

при следующих вызовах все ок

Anton
25.08.2017
15:16:51
код покажи интерактора

Mark
25.08.2017
15:17:27
module Rates class UpdateAutoRate include Interactor RATES_URI = 'http://api.fixer.io/latest?base=USD'.freeze def call response = Net::HTTP.get(URI(RATES_URI)) if auto_rate.new_record? auto_rate.price = JSON.parse(response)['rates']['RUB'] Rates::Create.call(rate: auto_rate) else Rates::Update.call(rate: auto_rate, params: { price: auto_rate.price }) end end private def auto_rate @auto_rate ||= AutoRate.first || AutoRate.new end end end

Anton
25.08.2017
15:18:13
а где ManualRate лежит?

или вызывается

Mark
25.08.2017
15:19:00
ManualRate в моделях

Anton
25.08.2017
15:19:13
пробовал явно зарекваирить его?

Mark
25.08.2017
15:19:22
нет, ща попробую

че-то вообще не понятно почему на него ругается

он тут вообще не вызывается

зареквайрил все ок

Google
Mark
25.08.2017
15:21:41
только не понятно почему)

ладно щас разберусь, спасибо

Anton
25.08.2017
15:23:04
да было бы за что :)

Evgeniy
25.08.2017
19:48:55
Всем привет. Мне нужно сделать сериалайз в моделе serialize :notification_emails, Array Проблема в том что я через консоль спокойно записываю что мне нужно в бд, вот вопрос как описать контроллер и вюху для этого поля?

Serge
25.08.2017
21:41:15
Serge: Господа, подскажите, пожалуйста. Пишу тут задание, решил сделать update через модальное окно и ajax по туториалу https://richonrails.com/articles/basic-ajax-in-ruby-on-rails В итоге, после update, render 'index' выдаёт старые данные. Поставил byebug в контроллере в экшене update после .update_attributes(_params) - значения старые. Скачал проект из туториала, в нем проверил - там значения новые. Правда, если поставить два byebug - до и после update_attributes то в обоих случаях будет показывать старые значения, но рендерить новые. Кто знает, в чём может быть проблема? Как я понял, это не только у меня и в комментах к туториалу много у кого тоже.

Ярослав
25.08.2017
21:46:03
@CasualUser Попробуй заменить update_attributes на update!. Должно сразу стать понятно в чём дело.

Serge
25.08.2017
22:07:30
@CasualUser Попробуй заменить update_attributes на update!. Должно сразу стать понятно в чём дело.
Попробовал. То же самое выдаёт. Да в базу то всё пишется. По рефрешу новые значения выдаются. Но 'render index' из _save.js почему-то рендерит старые значения.

Ярослав
25.08.2017
22:17:28
Попробовал. То же самое выдаёт. Да в базу то всё пишется. По рефрешу новые значения выдаются. Но 'render index' из _save.js почему-то рендерит старые значения.
Тогда можно попробовать в _index.html.erb заменить @products.each на @products.reload.each. Если заработает, то уже думать о решении проблемы без костылей.

Serge
25.08.2017
22:21:13
Vasiliy
25.08.2017
22:21:49
А можно рр заюзать или дебагер

Serge
25.08.2017
22:22:23
Я юзал byebug



Serge
25.08.2017
22:23:07
Менял 100 на 200. Если одна точка, то новое значение.





Если 2 точки, то старое. Но это в проекте из туториала. В моем проекте всё-время старые.

Ярослав
25.08.2017
22:25:10
Спасибо за идею. Ещё до этого сообщения вставил в тело each product.reload и всё заработало.
Но скорее всего нужно просто в методах контроллера create и update поставить строчку @products = Product.all последней.

Vasiliy
25.08.2017
22:26:18
Погоди

А зачем ты в апдейт пихаешь продактс?

Скафолд сделай, там будет продакт.апдей(атрибуты); ретерн продакт

Google
Serge
25.08.2017
22:31:50
Но скорее всего нужно просто в методах контроллера create и update поставить строчку @products = Product.all последней.
Спасибо, так и сделал. Но вот интересно, почему пример из туториала работает и так. Специально ведь проверил, скачал, поставил.

А зачем ты в апдейт пихаешь продактс?
Я не только продактс пихаю, а всё, что нужно для render 'index'.

Vasiliy
25.08.2017
22:36:17
В индексе не должно быть апдейтов

Тут продакс не нужны

У тебя ж апдейт

Экшн

Serge
25.08.2017
22:39:25
Тут продакс не нужны
Ну как не нужны, если после апдейта вызывается render 'index', a в нем цикл по @products.

Vasiliy
25.08.2017
22:40:24


Admin
ERROR: S client not available

Vasiliy
25.08.2017
22:40:38
Нет же рендер индекс

Serge
25.08.2017
22:40:53
Я же после апдейта не перехожу на экшн индекс.

Vasiliy
25.08.2017
22:41:33
И это не рестфул, по ресту ты должен апдейтнуть сущность и снова обратиться к индексу аяксом

Поэтому там продактс не нужен

Serge
25.08.2017
22:43:25
Нет же рендер индекс
Там вверху ссылка на туториал есть, откуда я делал. Из _update.js.erb вызывается _save.js.erb а из него уж render index жаваскриптом.

Vasiliy
25.08.2017
22:43:40
И по ресту твой апдейт просто должен 204 статус вернуть без контента

Кароч он мудак

Там и 1 коммент почему он просит все продукты а апдейт и криет

И выше верно сказали, при запросе .алл идёт кэширование запроса из бд и после апдейта сущности в продактс старый кэш

Так неверно делать, лучше возьми геттинг стартес из гайдов рельс и пройди его

В общем переделывать дестрой в гет - гавно

Google
Vasiliy
25.08.2017
22:54:16
Партиалы подписывать _ - гавно, рельса сама может определить идёт к ней жс запрос или хтмл, достаточно респонд_то жс и правильно шаблоны назвать

Serge
25.08.2017
23:04:56
Так неверно делать, лучше возьми геттинг стартес из гайдов рельс и пройди его
Лучше, чем что? ? Что-то не вижу я в геттинг стартед модальных окнов с аяксом. Так то я почти прошел rails tutorial, а сейчас на работу устраиваюсь, пишу тестовое задание. Вот решил модальные окна сделать и нашёл такой пример.

Serge
25.08.2017
23:06:43
Там был пример с "чатом", точно помню
Вот здесь? http://guides.rubyonrails.org/getting_started.html

Anton
25.08.2017
23:07:58
Скорее вот тут

http://guides.rubyonrails.org/working_with_javascript_in_rails.html#dealing-with-ajax-events

Serge
25.08.2017
23:13:51
Vasiliy
25.08.2017
23:23:46
Да, вот Антон скинул, там есть сервер сайд в ту сторону смотри

Alex
26.08.2017
06:21:02
byebug так себе, юзай pry-rails/pry-byebug

Philipp
26.08.2017
23:02:31
В двух словах, чем в ROM отличается Combine от Wrap? (речь о релейшенах)

Lupsick
27.08.2017
01:12:00
Лул

Nikita
27.08.2017
01:46:25
В двух словах, чем в ROM отличается Combine от Wrap? (речь о релейшенах)
wrap делает иннер джойн, combine — отдельный запрос. Лучше использовать combine, это не медленнее

Philipp
27.08.2017
11:37:13
wrap делает иннер джойн, combine — отдельный запрос. Лучше использовать combine, это не медленнее
Спасиб. Что-то не увидел такой инфы в доках/гайдах. пропустил?

Nikita
27.08.2017
11:43:39
Спасиб. Что-то не увидел такой инфы в доках/гайдах. пропустил?
вот ты знаешь, правда не в курсе. Дока по апи на первый взгляд не проливает информации http://www.rubydoc.info/gems/rom-repository/ROM/Repository/RelationProxy/Wrap

был тикет в репозитории, где об этом шла речь. Но на него нельзя дать ссылку, потому что мы репозиторий и несколько других гемов слили в одну гит-репу

а ишью на гитхабе отключили после чего они перестали быть доступны на чтение, очень удобно!

короче, я приоткрыл ? https://github.com/rom-rb/rom-repository/issues/81#issuecomment-310165778

Nikita
27.08.2017
11:46:10
так в другую репу нужно постить теперь

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