On Fri, Oct 20, 2006 at 08:51:47AM +0900, J. B. Rainsberger wrote:
} I'm a beginning Rails programmer, so please be gentle.
}
} I want to store a hash as a single row in a database table. I'm
} currently storing each name/value pair as a row with a reference back to
} the "parent" row, but that seems unnecessarily complex. I want to know
} whether you have any better suggestions than what I plan to try to do.
}
} I plan to write the hash into the row in a single column by YAMLing it.
} I would, of course, unYAML on read operations.
}
} I do not plan ever to need to run a query on a single key in this hash,
} so I feel comfortable storing it blob-like this way. I just wanted to
} know whether anyone knows of a better way than YAML formatting/parsing
} in my Rails model object.
Look at ActiveRecord::Base.serialize. It lets you declare a column (make
sure it's a TEXT column) to be a serialized Ruby object. You can store your
hash automatically. You may also be interested in this example use of it:
http://redcorundum.blogspot.com/2006...-with-sti.html
} Thanks for your help!
} J. B. (Joe) Rainsberger ::
http://www.jbrains.ca
--Greg