在查看了 Rails 中的一些无表解决方案(virtus、active_attr、activemodel)之后,很明显不支持 Rails 关联。我的问题是为什么不呢?我错过了一些明显的原因吗?似乎关联会非常有用,但在我看到的所有示例中,它们都被遗漏了。
问问题
879 次
1 回答
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
于 2015-08-05T14:12:58.537 回答