@rubylang

Страница 1386 из 1684
Vasiliy
15.02.2018
14:48:42
а че ты спроси что от тебя хотят если не Thread.current

Paul
15.02.2018
14:48:58
Для belongs_to :country, required: true можно задать кастомную ошибку, когда country_id пустое?

Vasiliy
15.02.2018
14:49:18
имеешь ввиду текст? да

Zamira
15.02.2018
14:49:21
в сервисы вынести все, что работает с сессией. просто даже не вникли что за задача и к чему оно.

Google
Vasiliy
15.02.2018
14:50:50
как вариант(но думаю это зашквар) переопределить метод save и update

ojab
15.02.2018
14:51:11
логировани в базу?
ну, собственно, если даже и не в базу — его стоит в той же транзакции делать.

Zamira
15.02.2018
14:53:18
как вариант(но думаю это зашквар) переопределить метод save и update
Эм? Колбэки по сути то и будут делать. Только как в переопределенном save иметь доступ к айди текущего юзера

Vasiliy
15.02.2018
14:53:58
так то можешь посмотреть гем https://github.com/airblade/paper_trail

ojab
15.02.2018
14:54:21
https://github.com/palkan/logidze моднее

Sergei
15.02.2018
14:55:49
https://github.com/palkan/logidze моднее
ну тогда это будет противоречить логированию в одной транзакции, насколько я понимаю

Zamira
15.02.2018
14:56:20
https://github.com/palkan/logidze моднее
Не доверяю evil martians. у них адская текучка. каждый месяц с моего круга мне прилетают уведоления о том, что есть вакансия. и там evilmartians ?

Sergei
15.02.2018
14:57:13
почему?
он на триггерах базы работает, насколько я помню

Paul
15.02.2018
14:57:22
Zamira
15.02.2018
14:58:32
Коллеги, спасибо всем за участие в обсуждении, помощь и советы.

ojab
15.02.2018
14:58:49
он на триггерах базы работает, насколько я помню
они в транзакции выполняются по умолчанию

Google
ojab
15.02.2018
14:59:16
(в той, которая триггер затриггерила)

Vasiliy
15.02.2018
14:59:49
Как именно ?
стоп, а где взял required в связи?

Сергей
15.02.2018
14:59:52
кстати

Paul
15.02.2018
15:01:08
стоп, а где взял required в связи?
В 5-ой рельсе required по дефолту true Для <=4 надо указать обязательная ли связь

Alexander
15.02.2018
15:02:18
optional а не required

biert
15.02.2018
15:02:22
ребята чем можно заменить delayed_job чтобы он не брал 150 мегабайт с памяти а ПОМЕНЬШЕ ибо для таких задач как он используется это оверхед

Andiskiy
15.02.2018
15:03:02
крон

Антон
15.02.2018
15:03:07
подозреваю что dj на той же машине что и app и web?

Paul
15.02.2018
15:03:25
optional а не required
и то и другое можно ?

Vasiliy
15.02.2018
15:04:45
и то и другое можно ?
валидацию добавь

required в валидации, а optional на связи

Alexander
15.02.2018
15:06:31
ребята чем можно заменить delayed_job чтобы он не брал 150 мегабайт с памяти а ПОМЕНЬШЕ ибо для таких задач как он используется это оверхед
не работал с dj но работал с sidekiq, скорее они похожи и загружают весь код чтобы тебе удобно было использовать модельки и тд. В таком случае неважно что ты делаешь у тебя весь апп загружен в память

можно попробовать jemalloc - мне помогало на дешевых heroku инстансах

Vasiliy
15.02.2018
15:07:48
biert
15.02.2018
15:07:49
то есть выхода нету? у меня задача некоторые методы запускать через некоторое время

ojab
15.02.2018
15:08:21
выстави в api'шку и дёргай curl'ом через cron, как вариант

biert
15.02.2018
15:09:00
спасибо за идеи

Alexander
15.02.2018
15:10:18
выстави в api'шку и дёргай curl'ом через cron, как вариант
видел такое в "серьезном" продакшне. там еще считали секунды, сколько выполняется запрос и завершали досрочно если больше 20ти секунт так как хероку убивает запрос при достижении 30 сек?

Google
Alexander
15.02.2018
15:11:44
для несложных тасков можно https://github.com/adamwiggins/clockwork использовать он по умолчанию не грузит все, можно через require затащить код который нужен

biert
15.02.2018
15:14:11
The clock process only makes sense as a place to schedule work to be done, not to do the work. It avoids locking by running as a single process, but this makes it impossible to parallelize. For doing the work, you should be using a job queueing system, such as Delayed Job, Beanstalk/Stalker, RabbitMQ/Minion, or Resque. T

not to do the work я что-то не понял

Alexander
15.02.2018
15:15:00
он работает в 1 поток, если ты чтото делаешь внутри - ничего больше не запускается

поэтому они рекомендуют его использовать для закидания тасок в тот же sidekiq а не процесать таски прям в нем

но если сильно хочется...

biert
15.02.2018
15:16:49
опять не понял что-то я, у меня задача обьект некоторый метода, запустить через некоторый промежуток времени

Alexander
15.02.2018
15:17:54
как долго выполняется? какие промежутки времени?

если раз в час и работы на 5 минут - можно спокойно прям в clockwork вызвать

biert
15.02.2018
15:18:27
ну максимум до 5 секунд

но его зачастую надо только 1 раз запустить

не регулярно

Alexander
15.02.2018
15:19:28
но если у тебя в том объекте много зависимостей то тебе придется все зависимости добавить через require

короче добавь jemalloc а не поможет - докупи памяти

или напиши rake задачу и запускай ее через крон (whenever) или clockwork. Памяти будет кушать столько же но только когда запущена

biert
15.02.2018
15:21:58
я слышал там оно целое приложение перезапускает или я чтото путаю?

Alexander
15.02.2018
15:25:18
грузит в себя весь код, точно так как и dj. но после работы память освобождается

biert
15.02.2018
15:32:54
нет

Andiskiy
15.02.2018
15:33:40
почему ты не делаешь через крон? сделай рейк задачу и вызывай через крон, минимальный интервал минута

Google
biert
15.02.2018
15:34:22
я не знаю что ответить

я не знал как лучше, да и по началу в проекте был dj

Andiskiy
15.02.2018
15:35:02
пора менять )))

biert
15.02.2018
15:35:04
я ничего не меня, сейчас он постоянно жрет много памяти, сравнимо с приложением, из-за того что запускается еще один инстанс

Максим
15.02.2018
15:35:44
короче эпопея кончилась тем что написал сервис на 9 строк который сам всё сохраняет что джсонапи сохранять отказывается

biert
15.02.2018
15:38:02
https://github.com/brandonhilkert/sucker_punch интересно что это

Andiskiy
15.02.2018
15:38:10
я ничего не меня, сейчас он постоянно жрет много памяти, сравнимо с приложением, из-за того что запускается еще один инстанс
посмотри как можно вызвать рейк задачу через крон, мне кажется ничего стороннего не надо, просто на сервере правишь и все. По крайней мере я запускал через крон очистку файлов на почтовом сервере

https://github.com/brandonhilkert/sucker_punch интересно что это
не надежная мне кажется. асинхронно запускает твою задачу. она не подходит для этого

Eugene
15.02.2018
17:05:38
M
15.02.2018
18:57:01
Привет всем

Rafkat
15.02.2018
19:00:04
Есть пример рельс приложения с dry лиьами?

Anton
15.02.2018
19:07:20
Есть пример рельс приложения с dry лиьами?
У Меня без рельсов есть пара примеров

Lavrushchik
15.02.2018
19:15:44
вопрос. как правильнее будет загуглить тулзу а-ля "добавить в избранное какой-то объект" без регистрации юзера и дополнительных моделей в приложении? чтобы потом перейти во вкладочку "избранное" и посмотреть обьекты

Lavrushchik
15.02.2018
19:20:22
наверное. есть мб мануал какой или дока?

Иван
15.02.2018
19:21:33
наверное. есть мб мануал какой или дока?
http://guides.rubyonrails.org/action_controller_overview.html#cookies

Lavrushchik
15.02.2018
19:21:46
спасибо, буду читать

Nikita
15.02.2018
19:54:01
Есть пример рельс приложения с dry лиьами?
Какая либа драй конкретно интересует?

У меня в проекте валидейшн

Maximus
15.02.2018
20:40:28
подскажите, если нужно создать инет-магаз - какой гем лучше использовать - Spree? или другой (забыл его имя) Насколько помню ( и если не ошибаюсь) Spree уже не поддерживается ..

Google
Ilya
15.02.2018
20:44:27
поддерживается

Vasiliy
15.02.2018
20:49:20
Солидус ещё есть

Maximus
15.02.2018
20:50:16
ага, нагуглил этот второй гем - Solidus. кто-то работал с Solidus? Что лучше - Solidus или Spree в плане сложности создания ecommerce-приложения?

Vasiliy
15.02.2018
20:51:48
Солидус это форк спри

Ilya
15.02.2018
20:51:52
они почти одинаковые

что там что там тебе самому колупать их код придется

Maximus
15.02.2018
20:57:40
понял, буду разбираться)

Eugene
15.02.2018
23:56:12
Chat has rules. http://telegra.ph/Chat-rules-02-15 - English version http://telegra.ph/Behavior-rules-02-15 - Russian version

Добавил английскую версию правил чата. Если найдете опечатки - смело пишите мне.

Alex
16.02.2018
00:00:33
?

Иван
16.02.2018
00:39:23
Кто дебил? Тотпер!

Антон
16.02.2018
08:47:03
кто такой тотпер?

Alex
16.02.2018
08:59:26
подскажите, есть смысл добавлять индекс на поле, по которому связывается другая модель? запрос часто срабатывает. или индекс тут вешается автоматом?



Gleb
16.02.2018
09:02:16
t.belongs_to :category

идентификаторы уже давно не integer

Страница 1386 из 1684