过滤器(Filters)

Filters 在 ORM 中的功能 就好像他们是 的 3.0.x [Validation] 类的一部分,但是为了配合在 在 3.1.x [Validation] 的灵活的语法规则 进行了修改. Filters 可以用来在你的模型字段被赋值的时候触发运行 并且 可以用来在数据被插入之前对数据进行格式化.

定义自己的过滤器和定义规则方法相同: 使用 [ORM::filters] 方法返回一个像下面示例数组:

  1. public function filters()
  2. {
  3. return array(
  4. 'username' => array(
  5. array('trim'),
  6. ),
  7. 'password' => array(
  8. array(array($this, 'hash_password')),
  9. ),
  10. 'created_on' => array(
  11. array('Format::date', array(':value', 'Y-m-d H:i:s')),
  12. ),
  13. );
  14. }

[!!] 定义过滤器时, 你可以使用 :value, :field, 和 :model 参数分别来指定字段值, 字段名字, 和模型的接口.