Cakephp 2.0,控制器看不到型号

时间:2015-04-10 03:59:20

标签: cakephp cakephp-appmodel

我正忙着为我的客户升级网站。这是我第一次使用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}

1 个答案:

答案 0 :(得分:2)

感谢所有人的建议。根据扩展的错误消息,我在google上做了一些研究,并在stackoverflow上找到了一些其他线程。

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

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