是否可以在导轨上建立依赖于两个表的连接的模型?这意味着对于要找到/更新/销毁的模型记录,需要将两个数据库表中的记录连接在一起。该模型只是将两个表格的所有列都包裹在一起,然后可以用于表单等等。这种方式当模型被创建/更新时,它只是一个表单变量哈希值,可以应用到模型中?两个表作为一个模型在导轨中使用
这是可能的Rails 2或3?
是否可以在导轨上建立依赖于两个表的连接的模型?这意味着对于要找到/更新/销毁的模型记录,需要将两个数据库表中的记录连接在一起。该模型只是将两个表格的所有列都包裹在一起,然后可以用于表单等等。这种方式当模型被创建/更新时,它只是一个表单变量哈希值,可以应用到模型中?两个表作为一个模型在导轨中使用
这是可能的Rails 2或3?
就我所知,在Rails中无法完全按照您的要求来做,但您可以使用回调函数和has_one关联有效地完成您尝试使用第二个模型完成的任务,例如:
class Widget < ActiveRecord::Base
has_one :thingy
before_save :save_thingy_object
def save_thingy_object
self.thingy = Thingy.new({ :attr1 => 'some', :attr2 => 'thing' })
end
end
class Thingy < ActiveRecord::Base
belongs_to :widget
end
多表继承在Ruby on Rails中目前没有现成的解决方案。 虽然我会建议尝试做一些与上述关系模型类似的工作,然后基本上滥用委托或手工代理来伪造关系属性,使其看起来像模型的真实属性。
在MySQL中,您可以尝试使用视图来加入这两个表。但我不确定如果需要更新记录以及Rails如何管理它,会发生什么情况。