class Student < ActiveRecord::Base
attr_accessible :address, :age, :name, :sex
scope :address_is_beijing, where(:address => "beijing")
defself.younger_than(age)
where("students.age < ?", age)
end
scope :myage, younger_than(21)
end
scope :address_is_beijing, where(:address => "beijing")
irb(main):001:0> Student.address_is_beijing
[1m[36mStudent Load (0.0ms)[0m [1mSELECT "students".* FROM "students" WHE
RE "students"."address" = 'beijing'[0m
=> [#<Student id: 1, name: "zhangsan", age: 21, address: "beijing", sex: "man",
created_at: "2012-09-02 04:44:43", updated_at: "2012-09-02 08:23:19">, #<Student
id: 9, name: "zhaoliu", age: 24, address: "beijing", sex: "man", created_at: "2
012-09-02 08:21:13", updated_at: "2012-09-02 08:21:13">]
irb(main):002:0> Student.address_is_beijing.to_sql
=> "SELECT \"students\".* FROM \"students\" WHERE \"students\".\"address\" = 'b
eijing'"
转载于:https://blog.51cto.com/bohsu/1208350