【问题标题】:Extend Validate Class behaviour in CakePHP在 CakePHP 中扩展验证类行为
【发布时间】:2012-02-04 16:13:25
【问题描述】:

我整天都在开发一个 Cake App,不得不将两个验证函数复制到我几乎所有的模型中,这似乎是一种极大的浪费。

如果我想扩展 Validate 类以便我只需要编写这些验证函数,那么我已经查看了 Cake 文档和这里没有太多成果,那么最好的方法是什么?合适的文件最适合 CakePHP 结构的什么位置?

我猜我需要按照以下方式做一些事情:

class extraValidation extends Validate {

  public function alphaNumericSpecialValues($check) {

    //validation routines

  }

}

非常感谢任何帮助

【问题讨论】:

  • 你应该称之为 ExtraValidation (capitel E) - 蛋糕约定

标签: php validation class cakephp


【解决方案1】:

重写 Validation 并不容易,因为它的方法是静态的,并且以静态方式调用(使用类名)。

但是,您可以通过将自定义验证函数放入AppModel(这是您的模型的超类)或行为中来实现您想要的。如果你把它们放在一个行为中,记得添加&$Model作为每个函数的第一个参数。

【讨论】:

  • 谢谢 Ori,我会试一试,让你知道我的进展如何!
猜你喜欢
  • 2021-07-27
  • 2013-05-29
  • 2021-06-07
  • 2011-04-07
  • 1970-01-01
  • 1970-01-01
  • 2015-08-31
  • 2012-02-27
  • 1970-01-01
相关资源
最近更新 更多