cakeHP控制器是如何内置模型属性的


how does a cakePHP controller have a model property built in?

如果我有一个控制器,如下所示。

<?php
class LoginController extends AppController{
    public function index(){
    }
}
?>

我可以访问登录模型$this->LoginLoginController类如何访问Login模型?我们没有在LoginController类中定义任何名为Login的属性。这是怎么发生的?

CakePHP将为您动态创建一个模型对象,如果它不能在/app/Model中查找相应的文件。这也意味着,如果意外地将文件命名错误(例如,post.php或posts.php而不是Post.php),CakePHP将无法识别您的任何设置并将使用默认值。

Model.php,根据复数小写对象自动选择数据库表名,该表至少需要有"id auto_increment"主键。

您可以看到cakehp/lib/Cake/Model/Model.php