
Nikita
17.09.2017
10:01:57
потом к нему прикручу плагинчик и все будет просто охуенно

Alex
17.09.2017
10:01:58
просто в каждом методе дописывать айдишник?
а пробрасывать его как? :)

Google

Nikita
17.09.2017
10:02:32
помнишь была дискуссия про Repo.new?

Alex
17.09.2017
10:02:44
ха!
а ты прав.
прям в инициалайзер пихнуть аргумент значит.

Nikita
17.09.2017
10:03:05
да, и все

Alex
17.09.2017
10:03:26
я просто тогда ток начал знакомиться с ханами/ром'ом, не очень понимал как это работает пока полный гайд не прочел.

Nikita
17.09.2017
10:03:51
рому пофигу с какими релейшнами работать, поэтому там нужно небольшую проксю добавить, которая будет добавлять ограничение, когда ты будешь дергать релейшн

Alex
17.09.2017
10:04:14
или ты имеешь ввиду схему: прокинуть айди в initializer, дальше написать метод который миксует айдишник и юзаеть его во всех нужных методах?

Nikita
17.09.2017
10:06:26
вкратце, в четвертом роме каждый репозиторий уже имеет доступ ко всем релейшнам, ты пишешь repo.users, там срабатывает method_mising, который ищет релейшн. По сути этот method_missing нужно допилить, чтобы после нахождения релейшна он вызывал на нем rel.where(tenant_id: @tenant_id)

Alex
17.09.2017
10:06:51
о, круто. Спасибо.

Nikita
17.09.2017
10:07:53
тогда ты не сможешь даже что-нибудь выдернуть без ограничения. А для работы с базой без ограничений достаточно просто сделать или другой репо или в конструкторе не передавать tenant_id, как лучше по месту

Google

Nikita
17.09.2017
10:12:46
это кстати довольно херовый вариант

Alex
17.09.2017
10:13:42

Nikita
17.09.2017
10:16:33
да, поэтому им приходится ее усыплять, если она простаивает. Если мало пользователей, то она вообще все время спит, работает как бесплатные инстансы на хероку, приходится по полминуты ждать. Сейчас может что получше стало, но вот года два-три назад так было
но если пользователей много, то ничего
ну и в администрировании это понятно сложнее

Alex
17.09.2017
10:17:10
ну у нас ща джира используется в небольшой компании, видно что подтормаживает, но в принципе работает
ну т.е не критично все.

Nikita
17.09.2017
10:17:21
в облаке?

Alex
17.09.2017
10:17:25
да.
А ты говоришь что у них есть вариант где они под тебя инстанс выделяют?
не я просто джиру настраивал/покупал, хз чо там :)

Nikita
17.09.2017
10:18:09
это я не знаю, я думаю в облаке они сами балансируют

Alex
17.09.2017
10:19:34
ну ты просто сказал что они отдельный jvm запускают под каждого. На каком то конкретном тарифе?

Nikita
17.09.2017
10:20:04
а, так оно по-другому-то и не может работать кмк
просто архитектурно
внутре там неонка

Vadim
17.09.2017
11:17:16
Всем привет!
Хотел сказать спасибо всем, кто прошел предыдущий опрос, вы мне очень помогли :)
А теперь пришло время окунуться чуть глубже и закинуть еще один маленький опросик, буду так же крайне благодарен всем https://goo.gl/Pt9ca2

Alex
17.09.2017
11:21:59
лучше расскажи чем тебе помогли.

Vadim
17.09.2017
11:23:01

Alex
17.09.2017
11:23:24
записать задачу в кратком виде это несложно

Google

Alex
17.09.2017
11:23:29
главное чтобы инструмент был удобный.

Vadim
17.09.2017
11:31:54

sadboy
17.09.2017
12:29:20
Ку

Владимир
17.09.2017
13:19:29

Salem
17.09.2017
13:22:12

Alex
17.09.2017
23:08:53

Maxim
18.09.2017
07:03:39
привет! ни у кого под рукой нету ну *самого простого* примера работы с action cable на RoR? Везде по интернету только один пример - это чат на веб-сокетах. Для меня, как для новиска это сложновато для быстрого усвоения =(
Для понимания: у меня стоит задача послать (publish) с обычногоMVC контроллера сообщение в БД (PostgreSQL или Redis), а с другой сторны, на другой страничке-вьюхе диначмически подхватывать и отображать эти данные


Baryskhan
18.09.2017
07:23:38
Failure/Error: expect(page).to have_content('test title')
Capybara::Poltergeist::JavascriptError:
One or more errors were raised in the Javascript code on the page. If you don't care about these errors, you can ignore them by setting js_errors: false in your Poltergeist configuration (see documentation for details).
SyntaxError: Expected an identifier but found 'need' instead
SyntaxError: Expected an identifier but found 'need' instead
at http://127.0.0.1:37473/:1 in appendChild
at http://127.0.0.1:37473/assets/rails-ujs.self-661556f443fbae7f6cec8f2cd394aa5e8186cb3f96aded9628126d3484eaa71a.js?body=1:246 in processResponse
at http://127.0.0.1:37473/assets/rails-ujs.self-661556f443fbae7f6cec8f2cd394aa5e8186cb3f96aded9628126d3484eaa71a.js?body=1:173
at http://127.0.0.1:37473/assets/rails-ujs.self-661556f443fbae7f6cec8f2cd394aa5e8186cb3f96aded9628126d3484eaa71a.js?body=1:230 in onreadystatechange
кто знает что за ошибка?
в js у меня стоит простой append


Alex
18.09.2017
07:29:11
открой в браузере и смотри консоль ошибок
он на каждую ругаться будет. Можно сделать чтобы полтергейст на них не обращал внимания

Vasiliy
18.09.2017
07:32:07

Vasiliy
18.09.2017
07:33:33
там после конфига кабеля сообщение шлётся просто как
MessagesChannel.broadcast_to(Message, message: message.content)
class MessagesChannel < ApplicationCable::Channel
def subscribed
stream_for Message
end
end
и чуть чуть жса

Baryskhan
18.09.2017
07:35:50

Alex
18.09.2017
07:36:27

Nikolay
18.09.2017
07:37:50

Alex
18.09.2017
07:38:03

Nikolay
18.09.2017
07:38:55
я на такой случай переключался с полтергейст на обычный силиниум-хром драйвер

Google

Nikolay
18.09.2017
07:39:05
а там можно уже "на живую" всё глянуть)

Alex
18.09.2017
07:40:00

Alex
18.09.2017
07:41:44
да, это удобно

Baryskhan
18.09.2017
07:58:28
А как его отключить?

Alex
18.09.2017
07:58:49
там написано.

Tim
18.09.2017
09:11:36
в хелпере использовать методы, которые обращаются к бд, это плохо или очень плохо?

Igor
18.09.2017
09:16:31
вью хелпер?

Admin
ERROR: S client not available

Tim
18.09.2017
09:16:35
да

Igor
18.09.2017
09:17:00
я бы сказал очень плохо) но я не спец
в моральных суждениях

Tim
18.09.2017
09:17:39
вернее так, метод в хелпере который рендерит парциал
типа лучше всё это в контроллере явно делать и передавать как параметр?

Anton
18.09.2017
09:18:13
Потому что: мешаешь логику, сложно тестировать и поддерживать

Tim
18.09.2017
09:19:23
а какие в целом варианты тут есть?

Anton
18.09.2017
09:19:56
Код покажи :)

No
18.09.2017
09:20:47
Ребята, глупый вопрос, но пока голова не хочет работать в правильную сторону. Есть идеи, как затестить, что в модель загрузили файл? (carrierwave). Точнее, что файл был изменен на апдейте на новый файл.

Google

No
18.09.2017
09:20:47
Уверен, что я упускаю что-то элементарное, но туплю безумно

Tim
18.09.2017
09:20:48
def render_expenses
cost = current_tenant.daily_cost
render partial: 'billing/expenses', locals: { cost: "#{cost / 100}.#{cost % 100}" }
end
во вьюхе
= render_expenses

Igor
18.09.2017
09:22:31
а в чем проблема просто рендер паршил оставить и передавать current_tenant.daily_cost

Tim
18.09.2017
09:23:21
ну вот я тоже думаю так

Igor
18.09.2017
09:24:40
а вот перевод в какой-то другой вид этого коста может быть хелпером, использовать его внутри паршила или при передаче параметров уже как удобней

Nikolay
18.09.2017
09:25:41
чет хз, я бы сделал
def prepare_expenses(cost)
#{cost / 100}.#{cost % 100}"
end
+
view.html.slim:
render 'billing/expenses', cost: prepare_expenses(current_tenant.daily_cost)

Igor
18.09.2017
09:26:57
ну вот да

Tim
18.09.2017
09:27:38
тоже норм. это кстати чем-нибудь объективно лучше варика рендерить внутри хелперовского метода?

Igor
18.09.2017
09:28:17
это понятно

Nikolay
18.09.2017
09:33:04

Dmitriy
18.09.2017
09:45:38
Привет. Если рельсы отдают клиенту ответ по HTTP и у него отвалился интернет в этот момент и произошел сброс соединения - могу ли я на стороне рельс отследить это?

Igor
18.09.2017
09:48:24
http такого не дает, разве что ты будешь сам слать с фронта какие то доп. конфирмейшены. вопрос только зачем

Vladimir
18.09.2017
09:48:25
у тебя еще есть скорее всего нджинкс, который это закеширует и ты поедешь обрабатывать следующий запрос, так что нет

Dmitriy
18.09.2017
09:49:08
понял спасибо

Fedor
18.09.2017
09:49:21
в теории можно, если спуститься на tcp уровень и посмотреть, дошли пакеты или нет
но ты этого скорее всего не хочешь )

Nikolay
18.09.2017
09:50:15

Fedor
18.09.2017
09:50:47
сильно зависит
по идее возможно, не прям из рельсы конечно

Nikolay
18.09.2017
09:52:42
интересная тема для "проверить руками"