(CakePHP 2.3,CentOS)所以,这是交易:我有一个控制器'SpecialController'我写的,它在我的应用程序中做了一些方便的杂技。要完成它的工作,需要了解Model对象。在这种情况下,模型是$ this-> User。 SpecialController无法知道这个,因为它只是一个基类,所以我在beforeFilter()中明确地告诉它Model:
class UsersController extends SpecialController {
function beforeFilter() {
$this->bindModel($this->User);
parent::beforeFilter();
}
bindModel()函数只是在内部记录一个引用,以便我的SpecialController可以执行特殊操作。我想不得不告诉它关于$ this->用户。是否有可以参考模型的房产?我怀疑有类似“$ this-> modelObj”的东西设置为与“$ this-> User”相同的值,但我在文档中找不到任何内容。
答案 0 :(得分:3)
如果您使用控制器作为基类,您可以执行以下操作:
function beforeFilter(){
parent::beforeFilter();
$this->bindModel($this->{$this->modelClass});
// or
$this->bindModel(ClassRegistry::init($this->modelClass));
}
不确定这是否是您正在寻找的。 p>
答案 1 :(得分:0)
在蛋糕书中看到这一点:http://book.cakephp.org/2.0/en/controllers.html#Controller :: $使用