在Rails(virtus,active_attr,activemodel)中查看一些无表解决方案后,很明显不支持Rails关联。我的问题是为什么不呢?有没有明显的理由让我失踪?似乎协会会非常有用,但在我看到的所有例子中,它们都被遗漏了。
答案 0 :(得分:1)
我不确定如何回答你为什么不支持这个问题的问题是你可以通过Rails 4+支持它的一种方式。这不需要您拥有数据库表,也可以访问验证,关联和一些回调,如after_initialize。
class Tableless < ActiveRecord::Base
def self.columns() @columns ||= []; end
def self.column(name, sql_type = nil, default = nil, null = true)
columns << ActiveRecord::ConnectionAdapters::Column.new(name.to_s, default, sql_type.to_s, null)
end
attr_accessor :id, :name, :value
has_many :stuff_things
has_many :things, :through => :stuff_things
end