2009-06-05 2 views
0

Когда рельсы сериализуют объект для хранения в базе данных, он использует YAML. Я также хочу использовать Base64 кодирование/декодирование, когда YAML будет гораздо более компактным в операциях INSERT и UPDATE. Объекты, которые я сериализую, довольно большие, а кодировка Base64 сокращает время вставки и обновления для операторов на 70%.Base64 кодирование/декодирование при сериализации атрибута в/из базы данных

Я проскальзывал через код Rails в течение последнего часа, ища метод, который я могу перезаписать, но не могу найти правильный. Я думал, что, возможно, кто-то здесь уже сделал что-то подобное.

Заранее благодарен!

ответ

1

Вы ищете ActiveRecord :: Base # serialize. У меня была аналогичная проблема - я хотел сохранить большой объект в сеансе, но затем решил создать вместо него таблицу и соответствующий класс. Много, намного чище.

+0

ActiveRecord :: Base # serialize только отмечает атрибут для сериализации, он фактически не выполняет сериализацию в и из базы данных. – robotshapes