Cakephp 2.0,控制器看不到模型



我正忙着为我的一个客户升级一个网站。这是我第一次使用 CakePHP,我遇到了问题。

我在数据库中创建了一个名为 banners 的表,并创建了以下文件:

Model/Banner.php
Controllers/BannersController.php
View/Banners/admin_index.ctp

我的控制器似乎找不到模型。每当我尝试加载页面admin_index.ctp时,我都会收到以下消息:Error: An Internal Error Has Occurred.

如果我替换我的公共admin_index()的内容并使其回显文本,它确实有效。

我还尝试通过这样做向我的admin_index.ctp添加表单

echo $this->Form->create('Banner');

这给了我另一个Error: An Internal Error Has Occurred.

我已经完全按照帖子、页面等的其他设置方式设置了我的模型、控制器、视图和数据库,但我似乎无法让它工作。有没有人知道如何解决这个问题?

亲切问候

缺口

<?php
class Banner extends AppModel {

}
?>
<?php
class BannersController extends AppController {
public $helpers = array('Html', 'Form');
public function admin_index(){
    $banners = $this->Banner->find('all');
    $this->set('banners', $banners);
}
?>
Stack Trace:
#0 /srv/nkuchiki/www/www.kuchiki.nl/app/webroot/index.php(111): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#1 {main}
2015-04-10 17:29:43 Error: [MissingTableException] Table banners for model Banner was not found in datasource default.
Exception Attributes: array (
  'table' => 'banners',
  'class' => 'Banner',
  'ds' => 'default',
)

Request URL: /admin/banners
Stack Trace:
#0 /srv/nkuchiki/www/www.kuchiki.nl/lib/Cake/Model/Model.php(3501): Model->setSource('banners')
#1 /srv/nkuchiki/www/www.kuchiki.nl/lib/Cake/Model/Model.php(2905): Model->getDataSource()
#2 /srv/nkuchiki/www/www.kuchiki.nl/lib/Cake/Model/Model.php(2877): Model->_readDataSource('all', Array)
#3 /srv/nkuchiki/www/www.kuchiki.nl/app/Controller/BannersController.php(7): Model->find('all')
#4 [internal function]: BannersController->admin_index()
#5 /srv/nkuchiki/www/www.kuchiki.nl/lib/Cake/Controller/Controller.php(490): ReflectionMethod->invokeArgs(Object(BannersController), Array)
#6 /srv/nkuchiki/www/www.kuchiki.nl/lib/Cake/Routing/Dispatcher.php(191): Controller->invokeAction(Object(CakeRequest))
#7 /srv/nkuchiki/www/www.kuchiki.nl/lib/Cake/Routing/Dispatcher.php(165): Dispatcher->_invoke(Object(BannersController), Object(CakeRequest))
#8 /srv/nkuchiki/www/www.kuchiki.nl/app/webroot/index.php(111): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#9 {main}

感谢所有的建议。根据扩展的错误消息,我对谷歌进行了一些研究,并在stackoverflow上发现了其他一些线程。

我删除了我的 tmp/cache/models 和 tmp/cache/persistent 中的文件,问题解决了:-)。

当一切似乎都编程正确时,很难找到问题。

最新更新