Ruby “Ror活动记录”;“组件”;班级

Ruby “Ror活动记录”;“组件”;班级,ruby,activerecord,ruby-on-rails-3,Ruby,Activerecord,Ruby On Rails 3,根据我使用nHibernate的经验,我想知道如何在ActiveRecord中映射(n)hibernate的组件类 class Person < ActiveRecord::Base #somehow get a :name attribute here end class Name @fist_name @last_name end class-Person [#数据库ruby %w[名字名字名字], %w[姓氏姓氏] ], 结束 类名 属性访问器:名字,:姓氏 结束

根据我使用nHibernate的经验,我想知道如何在ActiveRecord中映射(n)hibernate的组件类

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

class Name
  @fist_name
  @last_name
end
class-Person
如何只使用一个表就可以做到这一点(所以这不是1:1,但我想在db中有一个:name\u first\u name列(或任何约定)?

这就是为什么

例如:

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
class-Person“name”,:mapping=>
[#数据库ruby
%w[名字名字名字],
%w[姓氏姓氏]
],
结束
类名
属性访问器:名字,:姓氏
结束

然后,您必须添加两个数据库列(名字、姓氏)。

您能解释一下您到底想做什么吗?非常感谢,这将完成:)