@codenamecrud

Страница 593 из 1009
Eugene
28.04.2017
19:44:10
а на регулярку строго пофиг

Kirill
28.04.2017
19:44:39
так фризится объект на который константа указывает

а не сама константа

Eugene
28.04.2017
19:45:01
Практическая суть от этого как конкретно меняется?

Google
Kirill
28.04.2017
19:45:33
относительно, да

константа указатель на объект

фриз запрещает мутировать сам объект, а то, что указатель может начать указывать на что то друге ну так это норма для руби

хотя конечно это не нормально

как и возможность переопределять константу

не туда

cypherQD
29.04.2017
22:18:13
кому можно тупой вопрос в личку по рельсам задать?) не хочу тут позориться кто не спит?)

Vitaliy
29.04.2017
22:20:36
лучше все же здесь

Danila
29.04.2017
22:32:57
не знать не стыдно

cypherQD
29.04.2017
22:33:03
лучше все же здесь
похоже конфликт имен, сейчас поменяю если не уйдет)то спрошу ошибка поменялась просто

да, не надо было поле type называть)

Joe
30.04.2017
08:54:38
а кто-нибудь пользуется neovim'ом?

Anton
30.04.2017
08:54:48
Я

Google
Joe
30.04.2017
08:55:15
а у тебя настроен Live reload?

Anton
30.04.2017
08:55:31
Хлоя фронтенда?

Для

Joe
30.04.2017
08:55:55
угу

Anton
30.04.2017
08:57:24
Я его отдельным демоном запускал и явно указывал что и как слушать, либо юзал всякие вебпаки/рельсы/ханами

А в чем проблема(

?

Joe
30.04.2017
08:58:43
да я пытаюсь его настроить через https://github.com/jaxbot/browserlink.vim

и не получается

нашел там issue, что он не стартует автоматически в неовиме, хотя в виме работает https://github.com/jaxbot/browserlink.vim/issues/44

и там написано, что *if I run node browserlink.js manually from another terminal, everything works fine again*

но когда я запускаю у себя node browserlink.js, то получаю ошибку Error: Cannot find module '/home/glaux/@stuff/vim/nvim_my/plugged/browserlink.vim/browserlink.js' at Function.Module._resolveFilename (module.js:470:15) at Function.Module._load (module.js:418:25) at Module.runMain (module.js:605:10) at run (bootstrap_node.js:423:7) at startup (bootstrap_node.js:147:9) at bootstrap_node.js:538:3

хотя этот Js там есть

Anton
30.04.2017
09:12:39
А путь какой до модуля?

Joe
30.04.2017
09:19:04
если ты про сам js-файл, то путь как раз такой, какой я указываю в команде /home/glaux/@stuff/vim/nvim_my/plugged/browserlink.vim/browserlink.js

Vlad
30.04.2017
09:56:59




Danila
30.04.2017
10:08:17
https://xph.us/2017/04/23/readability.html

Anton
30.04.2017
10:29:19
кстати, я тут знакомому расписал как мы нотификации шлем юзеру в зависимости от его настроек, если кому-то еще интересно, могу кинуть текст

Nikolay
30.04.2017
10:30:21
интересно

Google
Anton
30.04.2017
10:30:29
интересно
тогда вот https://gist.github.com/davydovanton/2cc371a456f3cd6bcb57814a74251f07

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

но основная идея именно такая

Danila
30.04.2017
10:32:23
сразу вопрос, почему класс не синглтон?

Nikolay
30.04.2017
10:32:44
а настройки только на стратегии или более узкие тоже есть?

Anton
30.04.2017
10:32:52
сразу вопрос, почему класс не синглтон?
потому что этот класс, сконфигурированыый, лежит в контейнере, который шарится по апликейшену

фиговая практика юзать синглтоны имхо

Danila
30.04.2017
10:33:47
я про паттерн синглтон, ты тоже про него?

Anton
30.04.2017
10:34:15
я про паттерн синглтон, ты тоже про него?
ага, у нас в место него контейнеры

Danila
30.04.2017
10:34:41
что это?

Anton
30.04.2017
10:34:51
что это?
контейнеры?

Danila
30.04.2017
10:34:53
да

Anton
30.04.2017
10:34:53
https://martinfowler.com/articles/injection.html

Nikolay
30.04.2017
10:35:46
у меня была похожая проблема, нужно было еще учитывать периодичность нотификаций и контекст

Danila
30.04.2017
10:35:54
я читал фаулера, мне хотелось чтоб своими словами объяснили

Anton
30.04.2017
10:35:55
а настройки только на стратегии или более узкие тоже есть?
там немно сложнее в оригинале Notify.new(email: :adapter, text: :adapter).call

Danila
30.04.2017
10:35:58
ну ладно

Nikolay
30.04.2017
10:36:46
> text: :adapter вот это выглядит как оверинжениринг немного

много у тебя адаптеров одноговременно используется?

Google
Anton
30.04.2017
10:37:45
я читал фаулера, мне хотелось чтоб своими словами объяснили
ну смотри, мы используем вместо глобальных классов контейнеры, в которых лежит вся логика и которые легко заменяются на что надо

для дева/прода обычные, для теста null адаптеры

Nikolay
30.04.2017
10:38:09
типо одни емейлы ты отправляешь через один адаптер, а другие через другой?

Anton
30.04.2017
10:39:01
типо одни емейлы ты отправляешь через один адаптер, а другие через другой?
ну, можно и так сделать, да. просто 2 инстанса этой штуки делаешь и юзаешь где что надо

Nikolay
30.04.2017
10:39:44
а логика определения получателя у тебя где?

бывает такое, что получателей несколько?

типо произошел эвент и все задействованные люди уведомляются

Admin
ERROR: S client not available

Anton
30.04.2017
10:40:15
а логика определения получателя у тебя где?
в стратегии, в адапторе просто логика отправки, а логика “подготовки” данных в стратегии

Danila
30.04.2017
10:40:25
а есть живой код?

Anton
30.04.2017
10:40:33
а есть живой код?
только закрытый

Danila
30.04.2017
10:40:42
а что за проект у тебя?

Anton
30.04.2017
10:41:24
обычный healthcare стартап :)

Danila
30.04.2017
10:42:05
понятно, норм тема с контейнерами, хоть и не до конца понятно

Anton
30.04.2017
10:43:09
понятно, норм тема с контейнерами, хоть и не до конца понятно
у меня в осс проекте есть пр, где я примерно тоже самое делаю

https://github.com/ossboard-org/ossboard/pull/116

все никак руки не доходят его доделать

Danila
30.04.2017
10:43:28
а про синглтон ответ я так и не понял (хотя вопрос и ни о чем конечно), ты ведь не инциализируешь его с переданными зависимостями, а передаешь их в call, у тебя так же может быть этот синглтон-Notify, которому в какой нибудь perform ты будешь те же зависимости передавать, и не будет повсюду богомерзкого new

спасибо, посмотрю

Google
Anton
30.04.2017
10:44:09
но в целом я юзаю dry-container, что бы сделать глобальную штуку, в которой код лежать будет весь https://github.com/ossboard-org/ossboard/pull/116/files#diff-c0a3bdec7bdbcf8981bcb224ea1869cbR6

Danila
30.04.2017
10:44:31
вот как раз увидел dry-container и пошел смотреть, сейчас всё станет понятно

Danila
30.04.2017
10:44:58
да, читаю уже

Anton
30.04.2017
10:45:25
да, только у меня используется сейчас 2 инстанса этой либы с разными конфигами
один для отправки нотификаций юзерам, второй для отправки аналитики в сегмент

Danila
30.04.2017
10:45:27
dry-мужики огромные молодцы конечно

Anton
30.04.2017
10:46:03
бывает такое, что получателей несколько?
да тоже легко. ты заруливаешь эту логику в стратегии и в зависимости от данных вызываешь адаптер столько рази (и как хочешь) сколько надо

dry-мужики огромные молодцы конечно
есть такое, полезные вещи делают

ну и плюсы такого подхода в том, что: 1. изолированно 2. нет глобального стейта 3. не зависит от модели (только от данных) 4. не привязанно к фреймворку (только dry-c, но это легко написать и без сухого) 5. легко настраивается нужные стратегии/адаптеры

Roman
30.04.2017
10:49:04


Всем привет. Рельсы странно себя ведут: делаю такой запрос и, когда поле is_bonus false, то возвращает 422, а если true, то все ок. В чем может быть дело?

Anton
30.04.2017
10:49:50
покажи код экшена

Roman
30.04.2017
10:50:30




Anton
30.04.2017
10:51:37
ну, посмотри на кондишен, если не сохраняется категория, ты ставишь статус, который является 422 ошибкой

https://httpstatuses.com/422

Roman
30.04.2017
10:52:05
да, я знаю, что это значит, не проходит транзакция

но почему она не проходит - вопрос

Danila
30.04.2017
10:52:28
@category.validate напиши

Anton
30.04.2017
10:52:32

Страница 593 из 1009