difei
August 26, 2009, 2:15pm
1
Greetings all,
I have some active_record models which have same columns, for
instance:
model A (int id, vchar name, vchar code)
model B (int id, vchar name, vchar code)
I can initiate a new model B object using “b = B.new”, assuming that I
already have an “a” acquired by A.find(), how can I assign the column
values of “a” to object “b” easily like:
b = B.new(a)
b.save
Cheers,
Difei
difei
August 26, 2009, 6:13pm
2
On Wed, Aug 26, 2009 at 7:15 AM, Difei
Zhao[email protected] wrote:
[code]
b = B.new(a)
attributes = a.attributes
attributes.id = nil
b = B.new( attributes )
b.save
[/code]
–
Greg D.
http://destiney.com/
difei
August 26, 2009, 6:24pm
3
On Aug 26, 2009, at 11:11 AM, Greg D. wrote:
already have an “a” acquired by A.find(), how can I assign the column
[/code]
–
Greg D.
http://destiney.com/
Actually, there’s no need to nil the id because you can’t mass-assign
the id.
b = B.new(a.attributes)
would have exactly the same effect.
-Rob
Rob B. http://agileconsultingllc.com
[email protected]
difei
August 27, 2009, 1:33pm
4
Greg D. wrote:
On Wed, Aug 26, 2009 at 11:21 AM, Rob
Biedenharn[email protected] wrote:
Actually, there’s no need to nil the id because you can’t mass-assign
the id.
b = B.new(a.attributes)
would have exactly the same effect.
I have 47 models with matching history models that will disagree. If
I don’t nil the id it complains.
–
Greg D.
Well, thanks very much for both of you guys.
difei
August 26, 2009, 9:11pm
5
On Wed, Aug 26, 2009 at 11:21 AM, Rob
Biedenharn[email protected] wrote:
Actually, there’s no need to nil the id because you can’t mass-assign
the id.
b = B.new(a.attributes)
would have exactly the same effect.
I have 47 models with matching history models that will disagree. If
I don’t nil the id it complains.
–
Greg D.
http://destiney.com/