OJ это все-же не сериализатор, а json парсер и маршаллер объектов jbuilder - медленная штука всегда была. Да и создание сериализаторов на уровне вьюхи, как по мне - кривое решение jb - впервые слышу Советую попробовать jsonapi-serializer, если используешь jsonapi спеку blueprinter, если нужен простой но надежный вариант panko_serializer - этот просто мне понравился, за счет того что он действительно довольно быстрый
На STI вся скорость этих сериалайзеров испаряется?
У нас пару лет назад бенчили панко и блюпринтер. Панко быстрее на 30 процентов, но жрет в половину больше памяти.
ну если брать panko - не должно, там нет всякой магии по автоматическому определению че и от куда брать, хотя не проверял
ну насколько я знаю это из-за кеширования всяких там приколов для определения ассоциаций, метод ли это или аттрибут и все такое
Не должно в плане? Делаешь выборку по STI таблице и тебе придется руками для каждой строки запускать правильный сериалайзер
а в итоге до сих пор либо to_json, либо дампер oj используется прям в контроллерах %)
Делать to_json прямо на полученной из базе модельке?
в древних местах есть и такое :)
ну это же не от сеарилизатора завивисит. Если у тебя на разные модели для одной и той-же таблицы разные сериализаторы в одном запросе, то явно чет не так с дизайном API - это же клиентам неудобно)
А в этих древних местах не боятся случайно отправить непубличные данные модели?
> Если у тебя на разные модели для одной и той-же таблицы разные сериализаторы Эээ совершенно нормальная ситуация, на фронте так же оно обратно парсится в зависимости от типа
Писос, а ведь можно было просто сериалайзеры юзать
Как мне рассказали, простой дамп to_h быстрее, чем целый сериализатор :)
Быстро сливает всю приватную часть модели, ага, ага
Обсуждают сегодня