【发布时间】:2011-02-14 22:00:25
【问题描述】:
在搜索了一个无表模型示例后,我发现了这段代码,这似乎是关于如何创建一个的普遍共识。
class Item < ActiveRecord::Base
class_inheritable_accessor :columns
self.columns = []
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
def all
return []
end
column :recommendable_type, :string
#Other columns, validations and relations etc...
end
但是我也希望它能够像模型一样发挥作用,表示对象的集合,以便我可以执行 Item.all。
计划是用文件填充项目,每个项目的属性将从文件中提取。
但是目前如果我执行 Item.all 我会得到一个
Mysql2::Error Table 'test_dev.items' doesn't exist...
错误。
【问题讨论】:
标签: ruby-on-rails ruby activerecord model