Ruby Scopes 作用域
2013-12-02 15:21
363 查看
Model Scopes它可以将常用的查询条件放在Model中,方便在Controller中重用,让程式变得干净易读,更厉害的是可以串接使用。
scope实例:
scope传参数实例:
推荐上述这种带有参数的Scope ,改成如下的类别方法,可以比较明确看清楚参数是什么,特别是你想给预设值的时候:
参考自:http://ihower.tw/rails3/activerecord.html
scope实例:
class WebSite < ActiveRecord::Base scope :valid, where(:status => 1) scope :for_snatch, valid.cts.order("id") end
scope传参数实例:
class Event < ActiveRecord::Base scope :recent, lambda{ |date| where(["created_at > ? ", date ]) } #或scope :recent, Proc.new{ |t| where(["created_at > ? ", t ]) } end Event.recent( Time.now - 7.days )
推荐上述这种带有参数的Scope ,改成如下的类别方法,可以比较明确看清楚参数是什么,特别是你想给预设值的时候:
class Event < ActiveRecord::Base def self.recent(t=Time.now) where(["created_at > ? ", t ]) end end Event.recent( Time.now - 7.days )
参考自:http://ihower.tw/rails3/activerecord.html
相关文章推荐
- spring @scope作用
- Angular——作用域($scope)内变量的变量名是动态的
- Web 四个作用域(scope)的用处
- Struts2+hibernate+spring 配置文件中scope="prototype"的作用
- Spring中scope="prototype"属性的作用
- 3.3.3 - [basic.scope.proto] - 【基本.作用域.原型】
- maven依赖关系中Scope的作用
- maven依赖关系中Scope的作用
- AngularJS(2)-Scope作用域和控制器
- Struts2+hibernate+spring 配置文件中scope="prototype"的作用
- 不同作用域(scope)的Spring Bean之间的依赖关系的动态代理注入
- Spring Bean Scope (作用域)
- angularjs中指令的scope作用域
- AngularJs之Scope作用域
- AngularJs之Scope作用域
- Spring中Scope作用域
- Maven学习笔记(四)---maven依赖关系中Scope的作用
- 深入探究AngularJs之$scope对象(作用域)
- EXTjs作用域是什么(What is that Scope all about )
- Spring之scope作用域