
Dima
27.02.2017
11:49:54
как будто не работал
позвольте поправлю.

Alexander
27.02.2017
11:50:02

Dima
27.02.2017
11:50:11
потому что такое встречается повсеместно.

Google

Ilya
27.02.2017
11:50:34
я просто пытаюсь донести мысль, что мыслить категориями говно-не говно - удел школльников
для чего-то - говно
для чего-то сойдет

Alexander
27.02.2017
11:51:31

Ilya
27.02.2017
11:51:35
а говорить, что у меня была специфическая задача и AR не справился - он говно
такое себе

Dima
27.02.2017
11:51:57
это ты так прочитал

Ilya
27.02.2017
11:52:28
это просто ты пропустил

Dima
27.02.2017
11:53:38
это человек, который вбросил и ушел. С тобой спорят другие люди.

Ilya
27.02.2017
11:55:43
Я не спорил, я обозначил свою позицию по поводу того, что увидел.

Lupsick
27.02.2017
11:59:06
AR говно в любом случае

Google

Плюшка
27.02.2017
11:59:11
-

Lupsick
27.02.2017
12:00:12
А кто как данные сериализует?

Ilya
27.02.2017
12:02:13
а какая у тебя БД?
обычно в JSON

Lupsick
27.02.2017
12:06:06
Напрямую из бд в жсон?

Ilya
27.02.2017
12:07:15
что тебе надо сериализовать?

Alexander
27.02.2017
12:07:44
Чем?
Куча гемов, через си-либы или нет

Lupsick
27.02.2017
12:08:23

Alexander
27.02.2017
12:09:22

Lupsick
27.02.2017
12:09:49
json)
Ты напрямую из бд в жсон перегоняешь?
У AR lazy loading ващет

Alexander
27.02.2017
12:10:21

Lupsick
27.02.2017
12:10:38
Короче ответа я не услышал

Alexander
27.02.2017
12:13:39

Lupsick
27.02.2017
12:14:27

Alexander
27.02.2017
12:15:01

Lupsick
27.02.2017
12:15:15
Из всех строк надо вырезать id

Google

Lupsick
27.02.2017
12:15:40
И кучу других полей например

Alexander
27.02.2017
12:15:57

Lupsick
27.02.2017
12:15:59
Ну и AR тебе в ответе не отдаст includes которые ты указал
Я то знаю как
Я хочу спросить у адептов AR

Nikolay
27.02.2017
12:18:38
ну AMS 0.8 норм

Ilya
27.02.2017
12:20:40
есть метод attributes, он возвращает поля модели как хеш
делаешь slice(*your_attributes)
и конвертишь хоть куда
это типа должен быть аргумент против AR?
pluck работает только на самых простых запросах, он вообще AR объект не создает

Evgeny
27.02.2017
12:30:46
Сталкивался кто-нибудь с тем, что при апдейте атрибута он не обновляется, при этом самое интересное то, что не передает мое новое значение, а берет старое и обновлет только минуты и секунды. Колонка timestamp, при создании все заносится верно с помощью Time.zone.now + 1.month.

A
27.02.2017
12:31:13
посмотри лог запросов например

Evgeny
27.02.2017
12:32:25
в запрос должен попасть совершенно другое значение

A
27.02.2017
12:38:59
я бы грепнул проект по expire_day и посмотрел бы что там еще есть.
ну или просто убедился бы что (Time.zone.now - 1.day) возвращает то что надо

Evgeny
27.02.2017
12:39:21
Это мой проект
И все ок возвращает)
Щас появилась идея
Мб колбэк виноват

Google

kolas
27.02.2017
12:46:24
да, before_save или типа такого

Ruslan
27.02.2017
12:46:29
сталкивался ли кто с проблемой, что контент сайта японские или какие-то там иероглифы, nokogiri не понимает кодировку ( unknown encoding name - Shift-JIS) и приходится явно приводить к UTF, и после преведения допустим берем строку - text = doc.at_css('body')&.children&.to_html и при попытке проверить present? кидает ошибку ArgumentError: invalid byte sequence in UTF-8 по сути можно проверить как !empty? или через size но мне что-то не нравится

Evgeny
27.02.2017
12:48:28
Вопрос решен, колбэк мой же, но я не учел тот момент, что update_attributes не скипает колбэки, вот я и встал в ступор почему так) Надо переделать на before_create, чтобы логику сохранить

kolas
27.02.2017
12:49:37
говорят что лучше без колбэков ваще, хотя я сам не пробовал ?

Ilya
27.02.2017
12:49:53
update_all можно
скипает все коллбеки

Evgeny
27.02.2017
12:50:14
Я сделал update_column и тут все прояснилось сразу же)

Ilya
27.02.2017
12:50:20
и валидации)

Evgeny
27.02.2017
12:50:45
Надо править идти тесты ?

Admin
ERROR: S client not available

A
27.02.2017
12:52:02

Ruslan
27.02.2017
12:52:20
спасибо, попробую

Lupsick
27.02.2017
13:14:50
Чтобы вернулись includes их надо дёрнуть
Атрибуты вернутся в стрингах
И вот чтобы сделать простую сериализацию мне нужно использовать 3 метода
Active model serializer вообще по сути патчит render
И делает n+1
И патчит current_user без твоего ведома

Google

Lupsick
27.02.2017
13:23:01
И в итоге у тебя не проект а набор перепатченных методов, которые не известно когда и как аыстрелчт
Ну точнее сделать то все что угодно можно, но простая задача превращается в сложную

Nikolay
27.02.2017
13:30:03
И делает n+1
делает N+1 если не заинклудишь необходимые ассоциации
как и AR

Lupsick
27.02.2017
13:30:50

Nikolay
27.02.2017
13:30:56
мне лень
я просто помню

Lupsick
27.02.2017
13:32:18
Ну если твой запрос несколько больше чем один includes то это превращается просто в боль
И у меня были случаи когда с includes мне рубокоп все равно сообщал о n+1
И я их видел в консоли

ojab
27.02.2017
13:33:54
потому что ВНЕЗАПНО только .eager_load во всех случаях делает join

Lupsick
27.02.2017
13:34:39
Так у тебя обычный запрос превращается в кучу кода

Dmitry
27.02.2017
13:38:41
а чего тогда такие страшные запросы просто во view не выносить?

kolas
27.02.2017
13:41:23
?

Lupsick
27.02.2017
13:43:04
Это простые запросы с двумя джойнами
То есть я типа хочу просто данные сериализовать, а мне говорят view сделай

Nikolay
27.02.2017
13:46:27

Lupsick
27.02.2017
13:46:45

Nikolay
27.02.2017
13:46:48
инклудсы всегда работают, а если надо как-то внутри фильтровать данные, то прокидываешь массив внутрь и делаешь в руби

Lupsick
27.02.2017
13:47:10
Ну так это сложным способом простые вещи