我已经使用Active Model
创建了类,它按预期工作,但是几乎没有要求
1)我想对all
使用class
方法。
2)同样的方式我想对where
使用class
方法之类的查询方法。
3)我想创建ActiveRecord::Relation
,以便我可以进行方法链接。
见我的课程:
require 'active_model'
require 'active_record'
class Message
include ActiveModel::Validations
include ActiveModel::Conversion
extend ActiveModel::Naming
attr_accessor :name, :email, :content
validates_presence_of :name
validates_length_of :content, :maximum => 500
def initialize(attributes = {})
attributes.each do |name, value|
send("#{name}=", value)
end
end
def persisted?
false
end
end
m = Message.new(:email => "test",:name => "test")
puts m.name #=> test
puts m.class #=> Message
puts m.valid? #=> true
Message.all
Message.where(:name => "test")
更多方法:
where
limit
having
group
select
order
uniq
请你帮我实现这个目标或给出一些指导。