【问题标题】:CakePHP comments plugin problemCakePHP 评论插件问题
【发布时间】:2011-09-28 21:02:11
【问题描述】:

您好,我正在尝试使用发现 here 的 CakePHP cmets 插件,它给了我以下错误

CommentsController 中缺少方法 错误:控制器 CommentsController 中未定义操作索引 错误:在中创建 CommentsController::index() 文件:app\controllers\cmets_controller.php。

到目前为止,我已经创建了 cmets 表,将其添加到插件中,并将以下代码添加到测试控制器,因为我想在“采取”操作中添加 cmets:

公共函数 beforeFilter() {

parent::beforeFilter();     
$this->passedArgs['comment_view_type'] = 'flat'; 
$this->passedArgs['actionNames'] = 'take';

}

函数取($id) {

$this->Test->recursive = 2;
$this->set('test', $this->Test->read(null, $id)); 

}

我添加了路线

Router::connect('/cmets/:action/*',array('plugin' => 'cmets','控制器' => 'cmets'));

我只是想知道是否有人以前使用过这个插件并可以帮助我?

谢谢,

文库

【问题讨论】:

标签: php cakephp plugins comments


【解决方案1】:

糟糕,我没有看到你没有使用官方的 CakeDC comments plugin,我建议你使用 2009 年的那个。

【讨论】:

  • 感谢您的回复,我的意思是我希望 cmets 出现在“采取”操作中,这就是我在视图中添加的内容 "requestAction('/cmets/index/测试/'.$test['Test']['id'], array('return')); ?>"
  • 我刚刚注意到我们在谈论不同的评论插件,我会使用我建议的,因为它是 CakeDC 的,并且会不断更新。
  • 我认为我使用的是基于 CakeDC 的插件,添加了一些功能.. 感谢您的建议,我会尝试原来的插件.. 希望它有效 ;)
【解决方案2】:

那个插件我没用过,但是在Cake中这个错误很常见:

Cake 正在寻找 index 函数,因为它是该控制器或任何控制器的默认或 home 函数。本质上 cake 是失败的,因为它试图通过 cmets 控制器中名为 index() 的函数向您发送一个页面(我假设 /cmets)。它是 Cake MVC 的核心路由功能。

如果您希望该页面正常工作,您需要添加:

function index(){
...controller code...
}

到 cmets_controller.php。但是,您还需要将 index.ctp 文件添加到 /app/views/cmets ,否则 cake 会出现缺少视图的错误。

url /cmets/take 会发生什么?

【讨论】:

  • 它是一个插件,所以我没有控制器,所以我添加了路由..
  • 我只是按照说明进行操作:D
  • 我的错,我的猜测是它路由到了错误的控制器,因此抛出了丢失的操作错误。该错误很常见,但在您的情况下,蛋糕可能以某种方式试图提供错误的视图。
猜你喜欢
  • 2011-10-02
  • 2013-06-06
  • 2019-03-16
  • 2017-11-29
  • 2012-11-29
  • 1970-01-01
  • 2011-12-18
  • 2012-10-11
  • 1970-01-01
相关资源
最近更新 更多