Ruby on rails 基于同一表记录从另一个同类对象获取ActiveRecord::基本类对象
F从演示文稿的幻灯片139开始 如果已定义了两个类:Ruby on rails 基于同一表记录从另一个同类对象获取ActiveRecord::基本类对象,ruby-on-rails,ruby,Ruby On Rails,Ruby,F从演示文稿的幻灯片139开始 如果已定义了两个类: class User < ActiveRecord::Base ... end class Registration < ActiveRecord::Base table_name = "users" ... end class用户
class User < ActiveRecord::Base
...
end
class Registration < ActiveRecord::Base
table_name = "users"
...
end
class用户
然后我得到了r=Registration.find(39)
如何从对象
r
中获取u
类型User
的相应对象u
,其中u.id==r.id
,而无需数据库查询?如果他们都在使用users表,那么u肯定是r?您将从数据库中获取相同的对象。用户模型包含一个与注册方法设置不同的方法。简言之,我认为在rails中,不需要DB查询就不可能从一个模型传递到另一个模型。让两个模型用不同的方法访问同一个数据库对我来说也是荒谬的。你应该重新构造你的站点。我的意思是,两个模型使用不同的方法访问同一个db表,而不使用单表继承为什么你对不同的类使用同一个表?注册是来自用户的超类?