2010-08-15 52 views
0

从我与NHibernate的经验来了,我不知道一个地图(N)如何冬眠的组件类中的ActiveRecord洛尔活动记录“组件”类

class Person < ActiveRecord::Base 
    #somehow get a :name attribute here 
end 

class Name 
    @fist_name 
    @last_name 
end 

这可怎么用一个表做只(所以这是没有1:1,但我希望有一个:在DB name_first_name列(或任何约定)

+0

你能解释一下你到底想做什么吗? – Reactormonk 2010-08-15 21:58:10

回答

2

这就是composed_of

适合你呢?例如:。

class Person < ActiveRecord::Base 
    composed_of :name, :class_name => "Name", :mapping => 
      [ # database       ruby 
       %w[ first_name first_name ], 
       %w[ last_name last_name ] 
      ], 
end 

class Name 
    attr_accessor :first_name, :last_name 
end 

然后您必须添加两个数据库列(first_name,last_name)。

+0

非常感谢,这将做到这一点:) – Jan 2010-08-15 22:12:43