我过去曾使用过 cakePHP,并且喜欢他们构建模型系统的方式。我想结合他们在扩展模型之间处理验证的想法。
这是一个例子:
class users extends model {
var $validation = array(
"username" => array(
"rule" => "not_empty"
),
"password" => array(
"rule" => "valid_password"
)
);
public function create_user() {
if($this->insert() == true) {
return true;
}
}
}
class model {
public function insert() {
if(isset($this->validation)) {
// Do some validation checks before we insert the value in the database
}
// Continue with the insert in the database
}
}
this 的问题是模型无法获取验证规则,因为它是父类。有没有一种方法可以将 $validation 属性传递给父类,而无需通过 create_user() 方法作为参数显式传递验证规则?
编辑:
此外,避免通过 __construct() 方法将其传递给父类。是否有另一种方法不会在我的用户类中导致大量额外代码,但让模型类完成大部分工作(如果不是全部?)