@rubylang

Страница 1415 из 1684
Pavel
02.03.2018
09:58:22
И так на все случаи жизни

Roman
02.03.2018
09:59:38
хм, а где можно почитать про такие штуки в рельсе?

Pavel
02.03.2018
10:05:06
http://guides.rubyonrails.org/active_support_core_extensions.html

Vasiliy
02.03.2018
10:05:13
http://rusrails.ru/active-support-instrumentation

Google
Roman
02.03.2018
10:05:48
я это читал, но тут вообще ничего не понятно

http://guides.rubyonrails.org/active_support_core_extensions.html
а это вроде то, что нужно

спасибо

pchellovod
02.03.2018
10:13:09
я думал это одно и то же, только переведённое

Vasiliy
02.03.2018
10:30:48
у некоторый людей начинаются приступы аллергии на переведённую документацию

хотя стоп, я не тот линк кинул лол) http://rusrails.ru/active-support-core-extensions

Talgat
02.03.2018
11:12:53
http://www.michaelnielsen.org/ddi/how-to-crawl-a-quarter-billion-webpages-in-40-hours/ Ребята поясните: там написано что архитектура краулера принимает 141 потоков, в рельсах это настраевается через: config/puma.rb или database.yml?

ojab
02.03.2018
11:13:57
А какое отношение рельсы имеют к описываемому в статье?

Talgat
02.03.2018
11:14:38


А какое отношение рельсы имеют к описываемому в статье?
Пытаюсь ускорить свой краулер, но никак не получается выйти на такой же уровень

ojab
02.03.2018
11:15:45
Зачем краулеру рельсы?

и как ты его запускаешь из рельсов, непонятно

если через джобы — смотри документацию к твоему джобозапускателю (i. e. sidekiq/delayed_job/whatever)

Google
ojab
02.03.2018
11:18:16
но вообще джобопускатель, вероятно, будет работать медленнее чем скрипт на голых рубях с concurrent-ruby

Talgat
02.03.2018
11:18:43
sidekiq+selenium+nokogiri

ojab
02.03.2018
11:19:35
тогда https://github.com/mperham/sidekiq/wiki/Advanced-Options#concurrency

Talgat
02.03.2018
11:20:18
ojab Там написано что не стоит превышать concurrency выше чем 50

Andiskiy
02.03.2018
11:27:06
Ребята, а есть какое-либо руководство про dry в рельсах? интересует как должен быть построен класс, например, где что объявлять и в какой очередности? инклуд, константы, .....?

Диёр
02.03.2018
11:28:28
но как же правило трёх

Евгений
02.03.2018
11:28:43
https://github.com/bbatsov/ruby-style-guide#classes--modules

https://github.com/bbatsov/rails-style-guide

Смерть
02.03.2018
11:29:03
https://github.com/arbox/ruby-style-guide/blob/master/README-ruRU.md

Andiskiy
02.03.2018
11:29:03
если ты не копипастишь один и тот же код, ты молодец. все руководство
а если я объявляю константы в середине класса тоже норм?

Смерть
02.03.2018
11:29:13
https://github.com/arbox/rails-style-guide/blob/master/README-ruRU.md

Русский перевод

Andiskiy
02.03.2018
11:29:58
да, называется "здравый смысл"
ок, спс. я думаю должен быть какой-нибудь синтаксис шугар.

Andiskiy
02.03.2018
11:30:53
а в чем проблема то ?
ну наверно проблемы то нет, но это же каша и должен быть какой-то порядок, что повысит читабельность твоего кода.

Adamtsov
02.03.2018
11:32:01
ojab Там написано что не стоит превышать concurrency выше чем 50
Можно запустить несколько процессов сайдкика

Talgat
02.03.2018
11:36:19
@ArtemAdamtsov то есть несколько worker`ов ?

Google
Talgat
02.03.2018
11:37:13
@ArtemAdamtsov подобным образом или как bundle exec sidekiq -q crawler1 bundle exec sidekiq -q crawler2

Adamtsov
02.03.2018
11:37:38
Да, именно процессов

А в процессе может быть например 25 Воркеров

Talgat
02.03.2018
11:39:01
@ArtemAdamtsov ?

Смерть
02.03.2018
16:11:07
У меня опять вопрос. Есть class A def m end end module B def m end end class C < A include B def c m() end Как сделать так, чтобы в методе c вызывался m из класса, а не из модуля?

ojab
02.03.2018
16:12:42
сделать alias_method перед include и юзать новое имя метода

Смерть
02.03.2018
16:13:31
Хм, спасибо

Интересное решение

Так, в моей ситуации не подходит

Сейчас объясню почему, я плохой пример привел

class A def a m() end protected def m end end module B def m end end class C < A include B def c a() end end

Вот так, нужно чтобы в методе a вызывался метод m из класа A

class A def a m() end protected def m end end module B def m end end class C < A include B def c a() end end
Решение class A def a m() end protected def m end end module B def m end end class C < A include B def c a() end def a A.instance_method(:m).bind(self).call() end end Криво, но работает

Ilya
02.03.2018
17:14:05
с send(:include..) можно поиграться

Иван
02.03.2018
17:14:48
А если сделать в методе модуля return super if self.instance_of?(C) сработает?

Это ещё больший костыль, но просто интересно)

biert
02.03.2018
17:52:36
как правильнее с точки зрения апи GET /api/for_drivers/check_phone?phone=1233423432 или GET /api/for_drivers/check_phone/1233423432

ojab
02.03.2018
17:53:57
/api/for_drivers/phones/123123/check

/:resource/:id/:action

biert
02.03.2018
17:55:29
спасибо

Google
Nikita
02.03.2018
17:57:31
/:resource/:id/:action
у него номер телефона скорее всего не айди, ему в колекшн параметром передавать придется

Anton
02.03.2018
20:42:47
Чувак ты очень-очень быстро отреагировал)
Случайно листнул чат вверх и наткнулся.)

Nursultan
02.03.2018
20:43:15
Случайно листнул чат вверх и наткнулся.)
Данные идут не с бд а с текстового файла

ojab
03.03.2018
10:11:03
Максим
03.03.2018
10:11:57
ну короче название параметра

как он будет в params называться

Aleksey
03.03.2018
10:33:21
народ, вопрос по Prawn. Есть элементарная задача перенести несколько картинок в 1 пдф. ImageMagick’ом это делается как convert 1.jpg 2.jpg output.pdf - но на выходе получается немного коряво. Хочу попробовать тоже самое правном. последнее что пробовал (тут немного псевдокода по отношению к image для наглядности): Prawn::Document.generate(pdf_path, page_size: 'EXECUTIVE') do images.each do |image| start_new_page(size: image.size, layout: :portrait) image image.path, at: [0, 0], width: image.width, height: image.height end end на выходе получаю пустую белую страницу вместо картинки

No
03.03.2018
10:33:27
Руби комьюнити, хейтеры грейпа и прочие маргиналы

Есть дело

В grape есть опция values

которая задает допустимые значения

есть ли простой способ не валидировать эти values, а отфильтровывать все values за пределами этого массива?

я сейчас сделал через coerce_with

но есть одна большая проблема

grape чересчур умный

optional :languages, type: Array[String], values: ContentLanguages::AVAILABLE_CONTENT_LANGUAGES, coerce_with: ->(val) { filter_values(coma_separeted(val), ContentLanguages::AVAILABLE_CONTENT_LANGUAGES) }, documentation: { param_type: 'query' }

Вот в таком варианте

Google
Aleksey
03.03.2018
10:35:15
надо

больше

строчек

No
03.03.2018
10:35:20
Он почему-то заранее знает, что массив через запятую

Aleksey
03.03.2018
10:35:21
в

одну

слишком

сложно

No
03.03.2018
10:36:05
ещё один

откуда вы такие беретесь?

rekero
03.03.2018
10:36:46
Ты знаешь больше одного варианта?

Aleksey
03.03.2018
10:37:23
“забавно, человек, который не понимает о чем ты ему говоришь, считает тупым вас, а не себя”

Aleksey
03.03.2018
10:41:23
Anton
03.03.2018
10:41:41
А, прости

Я не запалил, что псевдокод

Ты как картинки вставляешь?

Код покажешь?

No
03.03.2018
10:42:12

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