Hallo,

der Use Case: Ich möchte in Model A eine Kopie von Model B speichern.
Und zwar mit Hilfe von ActiveRecords serialize Methode.

class A < ActiveRecord::Base
  serialize :b
end
class B < ActiveRecord::Base
end

Folgendes funktioniert

A.create(:b => {:a => 1})

Der Hash wird YAML-serialisiert in die Datenbank geschrieben. Aber
wenn die Referenz eine Instanz von ActiveRecord ist, dann passiert
nichts.

A.create(:b => B.find(:first)) # natürlich angenommen es gibt ein B in
der Datenbank

Trotzdem ist die b Spalte in der Datenbank dann leer. Beim abholen des
Datensatzes ist b nil.

Meine Analyse sagt mir, dass man anscheinend ActiveRecord-Instanzen
nicht mit Hilfe der serialize Methode serialisieren kann.

Hat jemand einen Tipp, was ich übersehen habe, oder wie ich am
elegantesten die Serialisierung manuell implementiere.

Vielen Dank

Gregor
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug

Antwort per Email an