
Serhii
21.12.2016
19:06:00
это если бы небыло елса для рескью, тогда да - ад и израиль
там где я этот метод встречал, его кстати еще и в класс стринги впихивали ))

Artem
21.12.2016
19:07:51
def integer?(val)
Integer(val)
true
rescue ArgumentError, TypeError
false
end
без else'ов

Google

Serhii
21.12.2016
19:08:58
так вот жопа
def integer? arg
return Integer arg
rescue ArgumentError
false
else
true
end
а как первый раз писал - все хорошо

Artem
21.12.2016
19:10:35
вот у тебя проблемы, такой крохотный метод кажется громоздким :)
если тебе часто такими преобразованиями типов приходится заниматься, лучше взять dry-types
очень мощная библиотека, позволяет свои алгебраические типы создавать, да и там из коробки все базовые уже есть

Serhii
21.12.2016
19:14:40
я прост поинтересовался, может у кого была схожая проблема и попадалось идеальное решение, о котором я не знаю

Alexandr
21.12.2016
20:19:52
Привет всем! Можете помочь?
Вот смотрите. Есть переменная @filters, которая содержит, например,
[id"=>"549785", "enabled"=>"yes", "name"=>"fwd:", "forward"=>"yes", "copy"=>"no", "action"=>"forward", "filter_param"=>"ryazanka@site.ru"}, {"id"=>"549786", "enabled"=>"yes", "name"=>"fwd:1130000024678210", "forward"=>"yes", "copy"=>"no", "action"=>"forward", "filter_param"=>"aristarhova@site.ru"}, {"id"=>"549788", "enabled"=>"yes", "name"=>"fwd:", "forward"=>"yes", "copy"=>"no", "action"=>"forward", "filter_param"=>"smituh@site.ru"}]
Вопрос такой: мне надо сделать .each с сортировкой по filter_param (по электронному адресу). Как его сделать грамотно?
Если делаю @filters.order(:filter_param).each, то выдается ошибка undefined method `order' for #<Array:0x007f2fbd1bb8b0>
Эх, ну ладно, сам погуглил.

Artem
21.12.2016
20:28:01
sort_by

Alexandr
21.12.2016
20:43:21
sort_by
Если во вьюхе, то как-то так?
- @filters.sort_by! do |item|
- item[:filter_param]

Artem
21.12.2016
20:44:41
зачем это во вьюхе делать? зачем мутировать коллекцию?

Alexandr
21.12.2016
20:50:09
Мне просто отобразить надо список емылов, а они в корявом порядке, как внешний сервис выдал

Google

Alexandr
21.12.2016
20:50:44
в базе всё это не хранится. Видимо, поэтому .order не срабатывает
почему-то в таком виде массив не сортируется :(

Artem
21.12.2016
21:01:31
ну отсортируй в контроллере
в принципе ты все правильно сделал

Alexandr
21.12.2016
21:01:53
Но вот я не понимаю почему во вьюхе не сортируется?

Artem
21.12.2016
21:01:54
просто имхо код во вьюхе должен быть примитивным
хз

Alexandr
21.12.2016
21:02:24
Попробовал ещё сделать так:
filt = @filters.sort_by{|item| item[:filter_param]}
и вывожу filt
В результате вижу опять этот массив хэшей в той же последовательности

Artem
21.12.2016
21:03:00
для начала у тебя ключи строковые
а ты по символу обращаешься

Alexandr
21.12.2016
21:04:27

Aleserche
22.12.2016
07:25:07
Искусство тестирования программ может есть у кого?
или посоветуйте лучше

Ivan
22.12.2016
07:39:32
Парни, помогите. Нужно в бд хранить штуку вида {[...],[...]}
Ну или [{...}.{...}]

Eugene
22.12.2016
07:39:54
может [[...], [...]] все-таки?
ну или так да

Ivan
22.12.2016
07:40:03
там жсон

Eugene
22.12.2016
07:40:04
text column type
array: true

Google

Eugene
22.12.2016
07:40:10
или jsonb

Ivan
22.12.2016
07:40:30
Не, это понятно. Я к тому, что если я в массивах json буду хранить, его потом из базы доставать не болезненно?
Ну, то -есть, буду хранить json с типом array

Artem
22.12.2016
07:41:04
болезненно будет только запросы делать
а преобразования за тебя адаптер сделает

Ivan
22.12.2016
07:42:53
Спасибо

Rafkat
22.12.2016
07:47:48
бд какая?

Ivan
22.12.2016
07:48:08
psql
Сделал уже вроде.)

? Алёна
22.12.2016
07:48:46

Aleserche
22.12.2016
07:54:47
от твоих авок кажется что уже все. Тлен и безысходность

Ivan
22.12.2016
10:09:12
Как же меня бесит такая хрень. Запушил что-то в репозиторий, забыл тесты прогнать, включил комп, и на телефон прилетает сообщение от ci, что билд сфейлился

Vladimir
22.12.2016
12:35:06
зачем как array?

Ivan
22.12.2016
12:37:41

Alexandr
22.12.2016
12:37:57
Слуште, ещё есть вопрос. Вот смотрите. Допустим, в @emails находится дофига каких-то записей. Я хочу их всех убить. Сейчас я через @emails.each для каждого элемента делаю .destroy и это происходит довольно медленно. А можно ли как-то массово их всех уничтожить?

Ivan
22.12.2016
12:38:21
Несколько однородных жсонов

Eugene
22.12.2016
12:38:23
@emails.destroy_all

Alexandr
22.12.2016
12:38:39

Eugene
22.12.2016
12:38:39
гуглить то нет?

Google

Alexandr
22.12.2016
12:38:46
Иногда быстрее спросить

Vladimir
22.12.2016
12:38:50

Eugene
22.12.2016
12:38:51
Иногда лучше погуглить

Alexandr
22.12.2016
12:38:58
у спецов же результаты кэшированные :)

Eugene
22.12.2016
12:39:04
А то спрашивать ты научишься, а гуглить - нет
и кому ты такой нужен будешь?

Vladimir
22.12.2016
12:39:30
гуглить - это скилл? это глагол _))

Alexandr
22.12.2016
12:39:30
Согласен

Eugene
22.12.2016
12:39:36
еще какой скилл
я даже пост об этом писал лол

Admin
ERROR: S client not available

Vladimir
22.12.2016
12:40:07
о_О

Eugene
22.12.2016
12:40:25
http://frey.su/google-it/

Vladimir
22.12.2016
12:44:55
жесть
статья. как гуглить.

Aleserche
22.12.2016
12:46:07
гуглить это же существительное

Vladimir
22.12.2016
12:46:38
"можно одолжить ваше ГУГЛИТЬ ненадолго"
?

Ivan
22.12.2016
12:47:54

Eugene
22.12.2016
12:49:32

Google

Alexandr
22.12.2016
12:50:54
блин, че-то destroy_all тоже медленная, хоть и существенно быстрее, чем each :(

Eugene
22.12.2016
12:51:12
это потому что она цепляет все колбеки и зависимости

Vladimir
22.12.2016
12:57:05
@email = nil )
и @#%#ь оно там само как-ниюудь )

Artem
22.12.2016
12:59:30
destroy_all - это то же самое что each(&:destroy)

Alexandr
22.12.2016
12:59:39

Vladimir
22.12.2016
13:01:09
если больше нет ссылок на объекты - сборщик мусора соберет

Alexandr
22.12.2016
13:01:12
Блин, у меня скрипт отработать не успевает - в браузере ошибка по таймауту выдается :( Придется разбивать на подзадачи

Vitaliy
22.12.2016
13:01:28
Предлагаю погуглить
Bulk destroy all

Alexandr
22.12.2016
13:02:17
Спасибо, погуглю :)

Vladimir
22.12.2016
13:02:45
а как гуглить можешь узнать из статьи Фрея ?
кстати кто это?

Alexandr
22.12.2016
13:04:10

Vladimir
22.12.2016
13:04:18
оба ???
я никго не узнаю ?

Alexandr
22.12.2016
13:04:53
Хомо сапиенс, вроде... Млекопитающее...

Vladimir
22.12.2016
13:05:29
я искал руби но его нигде нет ?
иногла я ненавижу мои новые таблетки, сорри

Alexandr
22.12.2016
13:06:21
Делаю админку для Яндекс.ПочтыДляДоменов. Я просто редко сюда пишу

Vladimir
22.12.2016
13:06:57
я тоже ?
о, ты из Яндекса? Админкам привет передавай)