# serialized_attributes **Repository Path**: mirrors_github/serialized_attributes ## Basic Information - **Project Name**: serialized_attributes - **Description**: UNMAINTAINED - kind of a bridge between using AR and a full blown schema-free db - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-08 - **Last Updated**: 2026-02-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # UNMAINTAINED This repo is no longer being maintained as of 2015-08-25. --- # SerializedAttributes SerializedAttributes allows you to add an encoded hash to an ActiveRecord model. This is similar to the built-in ActiveRecord serialization, except that the field is converted to JSON, gzipped, and stored in a BLOB field. This uses the json gem which is much faster than YAML serialization. However, JSON is not nearly as flexible, so you're stuck with strings/integers/dates/etc. Where possible, ActiveRecord compatible methods are generated so that a migration should be pretty simple. See unit tests for examples. Some of the code and most of the ideas are taken from [Heresy][Heresy], a ruby implementation of [how FriendFeed uses MySQL for schema-free storage][schemafree]. Supports ActiveRecord 2.2 in ruby 1.8.7, and ActiveRecord 2.3-3.1 in ruby 1.9.3. See [Travis CI][travis] to see if we support your version of ActiveRecord and ruby. [Heresy]: https://github.com/kabuki/heresy [schemafree]: http://bret.appspot.com/entry/how-friendfeed-uses-mysql [travis]: http://travis-ci.org/#!/technoweenie/serialized_attributes ## Setup Install the plugin into your Rails app. ## Usage ```ruby class Profile < ActiveRecord::Base # assumes #data serializes to raw_data blob field serialize_attributes do string :title, :description integer :age float :rank, :percentage time :birthday end # Serializes #data to assumed raw_data blob field serialize_attributes :data do string :title, :description integer :age float :rank, :percentage time :birthday end # set the blob field serialize_attributes :data, :blob => :serialized_field do string :title, :description integer :age float :rank, :percentage time :birthday end end ```