Should work fine as long as the property names stay the same.
you could easily try this for yourself in irb.
irb(main):013:0> class MyThing
irb(main):014:1> def initialize( a, b )
irb(main):015:2> @a, @b = a, b
irb(main):016:2> end
irb(main):017:1> end
=> nil
irb(main):018:0> thing = MyThing.new( 1, 2 )
=> #<MyThing:0x2aaaab4f44e8 @b=2, @a=1>
.. then inspect the serialized data:
irb(main):023:0> serialized = Marshal.dump( thing )
=> "\004\010o:\fMyThing\a:\a@bi\a:\a@ai\006"
try messing around with the class on the fly, and reload the marshalled
data:
irb(main):042:0> thing2 = Marshal.load( serialized )
=> #<MyThing:0x2aaaab4f7990 @b=2, @a=1>
Pedro C?rte-Real wrote:> I have a rails app that has a search mechanism with a bunch of
> options. I''ve consolidated all the search parameters into a
> SearchQuery class. Now I want to store searches to be recalled later.
> I searched the wiki but couldn''t find any pages about how to do
this
> best. I''m worried that if I just serialize the object I
won''t be able
> to change the class without breaking the searches that are already in
> the database.
>
> How flexible is the unserializing to changes? Should I just implement
> my own (yaml based) serializing/unserializing that I can then version
> to handle upgrades or is that overkill?
>
> Pedro.
> _______________________________________________
> Rails mailing list
> Rails@lists.rubyonrails.org
> http://lists.rubyonrails.org/mailman/listinfo/rails